为什么我js动态添加的a标签相应的js会失效

为什么我js动态添加的a标签相应的js会失效,第1张

个人理解

我猜测的会失效,应该是通过jquery绑定事件失效了吧?

如何解决

// 在动态添加元素后,如果之前绑定事件是通过click 绑定,则动态添加的元素不会被绑定。

//可以通过delegate 进行绑定

$('body').delegate('a','click',function(){

    //此处为处理过程

})

//而且要保证$('body') 中的选择器不是动态添加的。

 3. 如果该回答没有对应您的问题,请您贴出您的问题代码

首先你的看看你的代码有没有执行到imgArr[i].setAttribute("src",imgArr[i].getAttribute('xsrc'));

用f12调试脚本,或者alert()下;并查看图片的src有没有改变!如果改变了证明执行了,在看下imgArr[i].getAttribute('xsrc')有没有获取到src值

获取对象位置的代码我不知道你的有没有问题,下面是我做延时加载时用到的代码:

var getPosition= function (el) {

_x = 0, _y = 0

while (el.offsetParent !== null) {

_x += el.offsetLeft

_y += el.offsetTop

el = el.offsetParent

}

return { x: _x, y: _y }

}

如果还不可以你可以把代码给我帮你看看

定义一个点击事件函数;

定义一个鼠标滑过事件函数;

定义个鼠标离开事件函数。

<!DOCTYPE>

<html>

  <head>

<meta http-equiv="Content-Type" content="text/html charset=UTF-8">

<title>

RunJS 演示代码

</title>

<style>

#Main {

position:absolute

}

</style>

<script>

onload = function ()

{

Main.onclick = function()

{

document.onmousemove = null

this.style.left='-9999px'

}

document.onmousemove = function(e)

{

e = e || window.event

var x = e.clientX

var y = e.clientY

setTimeout(function(){

Img.style.left = x + 5 + 'px'

Img.style.top = y + 5 + 'px'

}, 120)

Main.onmouseover = function()

{

this.hover = true

}

Main.onmouseout = function()

{

this.hover = false

}

}

}

</script>

  </head>

<body>

<div id="Main">

<img src="../images/shengdan16x16_01.gif" id="Img">

</div>

  </body>

</html>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11863564.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存