Javascript 滚动事件不工作JQuery
我有这个部门:Javascript 滚动事件不工作JQuery,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有这个部门: <div id="inbox-prof-load-msg" class="message-content row nice-scroll"> <?php include_once('inbox-chat-msg.php'); ?> </div> $('div#inbox-prof-load-msg').scroll(function()
<div id="inbox-prof-load-msg" class="message-content row nice-scroll">
<?php include_once('inbox-chat-msg.php'); ?>
</div>
$('div#inbox-prof-load-msg').scroll(function() {
console.log('Scrolled')
});
为什么我没有得到滚动事件?我调用了.click()
进行测试,Javascript在div上也没有click事件。
有人知道怎么修吗
注意:元素div#inbox prof load msg
被动态添加到DOM中
谢谢。在处理新DOM(动态添加到DOM中的元素)时,请使用事件委派: 希望这有帮助
var div=“test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
test
”;
$('body')。追加(div);
$('#inbox prof load msg')。在('scroll',函数(事件)上{
console.log('Scrolled');
});
$('body')。在('click','收件箱prof load msg',函数()上{
console.log('Clicked')
});代码>
#收件箱prof load msg{
高度:150像素;
溢出:滚动;
}
inbox prof load msg是否动态添加了div?元素是否确实滚动?“我已调用.click()进行测试,Javascript在div上也没有单击事件。”这与您的问题密切相关。你考虑过$('div#inbox prof load msg')
返回0个元素的可能性吗?@GustavoHenrique我想是的。您需要使用事件委派,然后它才能用于动态添加到DOM中的元素。另外,由于ID在DOM中应该是唯一的,所以您可以简单地使用#inbox prof load msg
而不是div#inbox prof load msg
来代替它。您可能会想限制或取消该功能。嘿,我正在尝试“滚动”,但不起作用,但“单击”可以工作,您知道为什么吗?
$('#inbox-prof-load-msg').on('scroll',function (event) {
console.log('Scrolled');
});
$('body').on('click', 'div#inbox-prof-load-msg', function() {
console.log('Clicked')
});