这里是代码我正在使用..mousewheel仅针对滚动轨道区域而不是整个div / iframe ...
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<link rel="stylesheet" type="text/css" href="style/jquery.jscrollpane.css">
<script type="text/javascript" src="script/jquery-1.3.2.js"></script>
<script src="script/jquery.jscrollpane.js"></script>
<script src="script/jquery.mousewheel.js"></script>
<script src="script/jquery.jscrollpane.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('#test').jScrollPane({ showArrows:true , scrollbarWidth:5});
});
</script>
</head>
<body>
<div id="test" style="height:300px;width:900px;overflow: auto;">
<iframe style="height:1300px;width:900px;" src="http://www.google.com" scrolling="no"></iframe>
</div>
</body>
</html>
答案 0 :(得分:2)
iframe会占用你所有的活动。您要么必须摆脱iframe,要么在其上面放置一个透明元素来捕获事件(但这会使iframe不可交互)。
答案 1 :(得分:0)
我已回答了您在Google代码和both上提出的问题times on the jScrollPane mailing list。
正如Matti所说,iframe正在捕捉滚动事件,您无法从托管页面访问它们。此示例中显示了唯一可靠的解决方案(如果您可以控制嵌入页面):