聚焦SWF对象时停止滚动网页

Stop scroll web page when focus SWF Object

本文关键字:滚动 网页 SWF 对象 聚焦      更新时间:2023-09-26

我有一个小问题。目前我正在开发一个简单的网页与flash游戏在WordPress。

例如,考虑以下页面:http://ggames.eu/2015/11/25/prince-of-persia/

这个游戏的控制器是箭头键,当我按下向下键或向上键时,网站被滚动,游戏变得不活动。

是否有可能阻止此页面滚动?我尝试了很多次使用jQuery函数,但都没有成功。

更新:我尝试过这个代码,但它不起作用:

jQuery(document).bind('keydown keypress', function(e) {
    if(e.keyCode > 36 && e.keyCode < 41) e.preventDefault();
});

您的问题不在于页面滚动本身,因为如果JavaScript是通过由nicescroll-init.js脚本初始化的Nicescroll jquery插件(jquery.Nicescroll)执行的,那么您的SWF就无法捕捉按键。

因此,尝试禁用nicescroll-init.js,您会发现SWF运行良好。

为了避免该页面中的问题,您可以禁用nicewoll jquery插件,您的SWF将毫无问题地工作。

希望这能有所帮助。

您可以使用css直接停止滚动:

body{ overflow:hidden; }

或者只是停止scroll事件:

$(window).scroll(function(e){ e.preventDefault(); });