我有一个具有以下结构的 jquery 函数
function StartSong(e, sender) { }
我用下面的html来调用它
<h4 onclick="StartSong(event, this)"> <a class="button small d3 playButton" href="javascript: var c=1;">
当页面加载时,会显示一些歌曲,当单击播放时,函数中的发送者对象包含此数据,这是预期的
({jQuery18307744602853717308:8, sizcache04790260167065139:"6 18 0", sizset:false})
虽然当我通过ajax加载更多歌曲并将html附加到页面(与上面相同的html)并且通过单击调用该函数时,函数中的sender变量为空。
有人看出这有什么原因吗?
最佳答案
试试这个,将 onclick="StartSong(event, this)"
更改为 onclick="StartSong(event)"
和 function StartSong(e, sender )
到 function StartSong(e)
,然后使用 e.target
而不是 sender
。下面是片段。
您的 HTML,
<h4 onclick="StartSong(event)">
<a class="button small d3 playButton" href="javascript: var c=1;">
还有你的js,
function StartSong(e) {
var sender = e.target; //now use sender as you have been using.
}
关于javascript - Jquery 在 Ajax 生成的内容中使用时为 Null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32363891/