EventsOn元素没有被调用,但我可以确认它们已经被附加

Events On element not being called, but I can confirm that they have been attached

本文关键字:确认 元素 调用 EventsOn 我可以      更新时间:2023-09-26

我没有很好的短代码示例可以在本文中显示。我在开发的一个应用程序中遇到了一个非常奇怪的问题。我写了一些自定义滚动条代码,在这个例子中,我没有向其中一个滚动条添加任何事件处理程序;手柄";正在接到电话。

你可以在这里看到应用程序

要查看问题,只需搜索";生物学";在左上角,然后选择第一个结果。等待一些结果加载到右侧窗格中。右侧窗格中";新的";不应该对鼠标点击做出响应。如果您切换到已使用的选项卡,它会的。

现在,在你认为我把事件附加到它上搞砸之前,试试这个。

如果你使用chrome或任何带有简单JavaScript控制台的东西,你可以运行

$('.bs-scroll_bar_handle').mousemove(function(){console.log('moved');});

现在,每次你把鼠标移到其中一个滚动条上时,它都应该记录";移动";。它适用于搜索结果中的已用选项卡,但不适用于新选项卡。

我已经使用Visual Event来确认事件处理程序正在添加到元素中,并且我可以使用Visual Event手动触发它。

另一个注意事项。如果我只创建"新建"选项卡而不创建已使用的选项卡,它将正常工作。

即使你找不到确切的问题,我也非常感谢你对为什么会发生这种情况的建议。

所有的代码看起来都很好,只需要在滚动条上的内联元素样式中添加一个z-index: 999;,它就不起作用了:

<div class="bs-scroll_bar_handle" style="visibility: visible; height: 310px; top: 0px; z-index: 999;"></div>