我有我的html页面和iframe,当我将鼠标放在iframe上时,我使用鼠标滚动按钮将滚动iframe页面,我不希望发生这种情况。但我不希望卷轴在此iframe中全部禁用,因为我拥有fresque,而且我必须能够使用卷轴放大在iframe中禁用滚动
我该怎么办?
我试着做scrollTo(0, 0);
,但它在真实页面上,而不是在iframe上。
我有我的html页面和iframe,当我将鼠标放在iframe上时,我使用鼠标滚动按钮将滚动iframe页面,我不希望发生这种情况。但我不希望卷轴在此iframe中全部禁用,因为我拥有fresque,而且我必须能够使用卷轴放大在iframe中禁用滚动
我该怎么办?
我试着做scrollTo(0, 0);
,但它在真实页面上,而不是在iframe上。
你可以尝试使用mousewheel
事件取消滚动。
示例代码:
window.onload=function(){
setTimeout(function(){ //just to be sure that the document exists
document.onmousewheel=function(event){
event.preventDefault();
//add here your code to zoom
};
},300);
};
注意,IE8将始终以“内部”使用event.preventDefault();
,如果你想用一个标志来启用/禁用滚动滚动将无法工作。
你可以在这里阅读更多信息:http://www.quirksmode.org/dom/events/scroll.html
这是我的老办法:
的问题不够具体,但我想我明白了。
这里是一块的jQuery来解决我的理解:
(function($){
$(function(){
$(window).click(function(event){
if(event.which==3) //middle button
{
event.preventDefault();
//remaining code for the zoom(?)
}
});
});
})(jQuery);
这应该禁止使用滚轮滚动页面(不触摸工作)。
您可以在if
块中包含缩放的代码(?)。
包含此代码里面的的iframe!
谢谢,就是这样。我不能使用jQuery,但应该没问题 – leykan 2014-12-04 14:41:33
@leykan让我为你修复它。 – 2014-12-04 14:44:39
@leykan我在答案中发现了一个问题。你应该删除标记。我会尽力修复它 – 2014-12-04 14:47:28
尝试使用SCROLLING = “否” 选项,如
<iframe scrolling="no" src="http://www.google.com" width="400px" height="300"></iframe>
假设: “我想禁用页面的滚动而不disabeling滚动(在iframe
)”
首先,这个CSS将关闭滚动条在页面上...
<style type="text/css">
html, body {
overflow: hidden;
}
</style>
...和,这将禁用滚动每当我t的尝试......
$(window).scroll(function() {
scroll(0,0);
});
...虽然,这可能是一个更好的选择......
document.body.scroll = "no";
document.body.style.overflow = 'hidden';
document.height = window.innerHeight;
“我想禁用页面的滚动而不停止滚动。” - 笏? – brbcoding 2014-12-04 14:18:41
以及我希望当人们使用滚动按钮时,它不会滚动iframe页面。但没有禁用滚动,因为我需要的按钮滚动工作在fresque上的缩放 – leykan 2014-12-04 14:20:58