【发布时间】:2016-10-10 11:04:40
【问题描述】:
我正在尝试使用 js 滑块 slick,但是当我在我的网站上包含滑块代码时,默认的“可拖动”选项不起作用。 更具体地说,我无法在幻灯片 div 或我的网页 (Chrome) 中的文档上捕获任何 mousemove 事件。
在本地运行代码时,我可以观察到“mouseup”、“mousemove”和“mouseup”事件,但是当我将滑块代码放入网页时,我只能观察到“mouseup”和“ mousedown 事件。
以下是有效的本地代码。如果你运行它,它会在滑块 div 中记录 mousedown、mousemove 和 mouseup 事件。
当我将相同的代码移动到网站时,我无法观察到来自滑块 div 或来自文档的任何 mousemove 事件。是否已经有一些 js 正在运行完全防止页面触发 mousemove 事件?
<html>
<head>
<title>My Now Amazing Webpage</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.6.0/slick.css"/>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.6.0/slick-theme.css"/>
<script src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.6.0/slick.js"></script>
</head>
<body>
<style>
#container {
width: 450px;
height: 300px;
margin: 0 auto;
border: 2px solid black;
}
</style>
<div id="container">
<div class="your-class">
<div><img src="http://lorempixel.com/300/300" /></div>
<div><img src="http://lorempixel.com/300/300" /></div>
<div><img src="http://lorempixel.com/300/300" /></div>
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){
$('.your-class').slick();
$('.slick-slide').on('mousemove', function(e){
console.log("mousemove");
});
$('.slick-slide').on('mousedown', function(e){
console.log("mousedown");
});
$('.slick-slide').on('mouseup', function(e){
console.log("mouseup");
});
});
</script>
</body>
</html>
【问题讨论】:
-
你不需要
type="text/javascript"。 -
是的,真的 - 谢谢。
标签: javascript html events mouseevent mousemove