做autocomplete时候出现IE8、9下无法取得监听click事件,找了很多办法,最后把<ul><li>标签改成<table><tr><td>解决问题
代码如下:
function dataToDom(data) {
var num = data.length;
if ((options.maxItemsToShow > 0) && (options.maxItemsToShow < num))
num = options.maxItemsToShow;
var table = document.createElement("table");
// limited results to a max number
for ( var i = 0; i < num; i++) {
var tr = table.insertRow(i);;
var td=tr.insertCell(0);
var row = data[i];
if (!row)
continue;
//var td = document.createElement("td");
if (options.formatItem) {
td.innerHTML = options.formatItem(row, i, num);
td.selectValue = row[0];
} else {
td.innerHTML = row[0];
td.selectValue = row[0];
}
td.style.width="79px";
$(td).hover(function() {
$("td", tr).removeClass("ac_over");
$(this).addClass("ac_over");
active = $("td", tr).indexOf($(this).get(0));
}, function() {
$(this).removeClass("ac_over");
}).click(function(e) {
e.preventDefault();
e.stopPropagation();
selectItem(this);
});
}
return table;
};
相关推荐
解决IE6 IE7 Firefox中li兼容问题
本文实例为大家分享了js使用ul中li标签实现删除效果的具体代码,供大家参考,具体内容如下 <html> <head> <meta charset="utf-8"> <title></title> <style type="text/css"&...
HTML li 标签.docx li 标签
html li前添加图标,通过三种方法添加,第一种是:list-style-image,第二种是:background的方式实现,第三种:通过字体库引入图标
运用以上的代码可以使ie6支持li:hover的使用
var arrayli = obj.parentNode.getElementsByTagName("li"); //获取li数组 for(i=0;i;i++) { arrayli[i].className=""; if(obj==arrayli[i]) { obj.className="test"; } } } </script>
主要介绍了JavaScript给每一个li节点绑定点击事件的实现方法,包括js循环给li绑定参数不同的点击事件,需要的朋友可以参考下
在使用UL和LI显示文字的时候,由于IE浏览器对LI的文字长度没有默认强制令起一行。导致如果文字超出UL设定的宽度再先有的位置上折行,造成显示问题。 解决方法: 复制代码代码如下: ul li{ white-space:nowrap; } ...
js循环给li绑定事件实现 点击li弹出其索引值 和内容的方法
下面这篇文章主要介绍了关于JS中touchstart事件与click事件冲突解决的相关内容,下面话不多说了,来一起看看详细的介绍吧。 一 · 业务场景的描述 在对已完成的PC站点进行移动端适配时,我们想要站点在移动设备上有...
用jquery实现交叉合并2个ul标签!
经验证,其实是IE6的list-style-position属性造成的,默认情况下,Firefox中list-style-position值为 outside,即列表项符号会在LI标签的外面显示。而IE6的默认值则相反(inside)。不过这还不是问题关键,IE6完全是...
jquery 搜索 键盘选择 li 键盘事件 鼠标事件 ul li 鼠标+键盘上下选择li li变色
这里提醒下,PC是无法识别touch相关事件 二、解决方式 (1)preventDefault方法 通过使用preventDefault方法(阻止元素默认事件行为的发生)来解决。在touchstart中添加 e.preventDefault()就可以阻止click事件触发...
JavaScript给事件委托批量添加事件监听详细流程 1.什么是事件委托 事件委托:利用事件冒泡的特性,将本应该注册在子元素上的处理事件注册在父元素上,这样点击子元素时发现其本身没有相应事件就到父元素上寻找...
可以设置<li>的内容上下滚动,很好的东西哦
HTML li 标签.doc
我们遍历ul 下所有的li 并添加点击事件,一般我们会在for循环里面添加点击事件,但是结果和我们所期盼不一样,那么是为什么呢???? 接下来看看我们的js代码 var li = document.getElementsByTagName('li'); ...
jsp ul 下的li 标签循环滚动
直接解压把相关的样式,js及页面应用到相应的页面中。界面美观