javascript - 将 Jquery 对象传递给不适用于 IMG 的函数

标签 javascript jquery html

我想将 Jquery 对象传递给函数,但它不适用于 IMG 标签。

我做了下面的例子。当我点击文本时它有效,但是当我点击图像时它不起作用。

$(document).on('click','.playvid',function (event) {
    event.stopPropagation();
    popup($(event.target));
}); 
function popup(data)
{
    data.html("success");   
}
.playvid 
{
    cursor:pointer;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

<div data-id="3ZdHRvPNyCI" class=" playvid" ><img src="https://cdn4.iconfinder.com/data/icons/iconset-addictive-flavour/png/button_green_play.png">WATCH DEMO</div>

最佳答案

这个问题是因为,根据您点击的位置,event.target 可以是 img 元素,它不能包含 html。相反,将 $(this) 传递给您的函数,因为它将包含 .playvid 元素:

$(document).on('click', '.playvid', function(event) {
  event.stopPropagation();
  popup($(this));
});

function popup(data) {
  data.html("success");
}
.playvid {
  cursor: pointer;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

<div data-id="3ZdHRvPNyCI" class="playvid">
  <img src="https://cdn4.iconfinder.com/data/icons/iconset-addictive-flavour/png/button_green_play.png">
  WATCH DEMO
</div>

关于javascript - 将 Jquery 对象传递给不适用于 IMG 的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30778701/

相关文章:

javascript - 页面加载时不间断 onchange

javascript - qTip2 如果内容为空则隐藏

html - Sharepoint 2007 和 &lt;!DOCTYPE html>

javascript - 页面滚动定义的对象高度

javascript - Chromeapp设置div显示样式

javascript - 多光谱调色板

javascript - p5.j​​s 碰撞/对象交互。球弹跳

如果字符串包含不在 RegEx 中的字符,则返回 Javascript RegEx

javascript - 如何从现有的 svg 对象分配 css 背景图像?

javascript - 使用 jQuery 遍历 DOM