当我将事件添加到同一类差异 ID 时会出现一些错误
some bug when i add event to same class diff ID
这个演示中有一些错误。我想将相同的事件添加到同一类但差异 ID.像这样的代码
var self;
var id;
var result;
var myArray=document.getElementsByClassName("tipDiv");
for (var i=0;i<myArray.length;i++)
{
document.getElementsByClassName("tipDiv")[i].onmouseover=(function(num){
return function() {
$(this).myHoverTip("hoverDiv","");
}
})(i);
document.getElementsByClassName("tipDiv")[i].onmouseout=(function(num){
return function() {
$(this).cleanHover("hoverDiv");
}
})(i);
}
$.fn.myHoverTip = function(divId, value)
{
var div = $("#" + divId);
div.css("position", "absolute");
self = $(this);
id = self.attr("id");
self.hover(function()
{
div.css("display", "block");
var p = self.position();
var x = p.left + self.width();
var docWidth = $(document).width();
if (x > docWidth - div.width() - 20)
{
x = p.left - div.width();
}
div.css("left", x);
div.css("top", p.top);
function showCustomer(str)
{
var xmlhttp;
if (str=="")
{
result="";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
result=xmlhttp.responseText;
}
}
xmlhttp.open("GET","getbrand.asp?q="+str,true);
xmlhttp.send();
div.html(id+result+myArray.length);
}
showCustomer(id);
},
function() {
div.css("display", "none");
div.html("");
}
);
return this;
}
请帮我修复错误...它不像我想要的那样工作。 首先鼠标移到悬停上不起作用。其次得到错误的值。在第三次移动时获得正确的值。我转到下一个DIV .它将获取最后一个值。请帮助我!对不起我的英语。
首先,
您不必在forloop中再次执行document.getElementsByClassName("tipDiv")
。 这已经存储在 myArray
,所以你可以只使用 myArray[i]
..
但是为什么不使用jquery和悬停功能呢? api.jquery.com/hover。有了这个,您只需选择您的课程:
$(".hoverDiv").hover(...)
我想这会让你更容易..
或者使用 jquery 中的 mouseOver 函数:http://api.jquery.com/mouseover/
相关文章:
- 语法错误:缺少:在属性 ID 之后
- 未捕获错误:元素缓存中id为x的DOM元素与DOM中的元素不同
- 使用Javascript向ID数组发送通知时出现Facebook访问令牌错误
- 更改错误文本“用户 ID 或密码不正确”
- 按类划分的元素数组 - 类型错误:$.id 不是一个函数
- HERE 映射 javascript API - 抛出“指针必须有 ID”错误
- 解析 /page.xhtml 时出错:跟踪错误[行: 42] 与元素类型“id”关联的属性“{1}”应使用左引号
- DOJO 错误 ID 已注册
- Coturn/turnserver:错误437:分配不匹配:事务ID(WebRTC)错误
- 我得到未捕获的类型错误:无法读取属性'选项'即使定义了元素id,也为null
- Meteor Update集合-未捕获错误:不允许.不受信任的代码只能通过ID更新文档.[403]
- 如何修复重复的Facebook像素ID错误
- Jquery语法错误,id选择器上的表达式无法识别
- 选择id中带有双点的元素,错误:“#octo:cat”不是有效的选择器
- Node.js 在使用 id 参数时在 dpd.get 上部署 404 错误,在 dpd.put 上部署 400 错误
- 流星通过ID错误删除文档
- 主干集合获取抛出id错误
- 当以编程方式实例化小部件时,Dojo重复ID错误,但不是以声明方式
- 有相同id错误的潜水
- 在循环中访问多个id错误