html与嵌入其中的flash均存在滚动条的情况分析及处理方法

所属分类: 网页制作 / HTML/Xhtml 阅读数: 1626
收藏 0 赞 0 分享
我们在做开发时经常会遇到这种情况:
a.swf被添加到网页中, a.swf和html页面同时存在滚动条, 项目经理提了一个BT的需求---处理a.swf鼠标滚动的时候html页面不执行滚动, 反之则执行html页面的滚动!
应该怎么做呢?
方法1:
1.鼠标移入a.swf滚动区域的时候: 告知JS移除浏览器鼠标滚动监听.
2.鼠标移出a.swf滚动区域的时候: 告知JS添加浏览器鼠标滚动监听.
3.a.swf的wmode设置为"window".
总结: wmode设置为"window"可能会不满足项目需求, 这使得a.swf遮挡住任何在其之下的html页面; 另外鼠标移入a.swf滚动区域后按Alt+Tab切换页面时没有告知JS添加浏览器鼠标滚动监听, 所以在操作之后切回到html页面中是没有滚动处理的

方法2:
1.a.swf取消自身的鼠标滚动监听事件, 添加滚动处理接口供JS调用, 例如wheelToFlash(value).
2.鼠标移入a.swf滚动区域的时候: 告知JS, 例如mouseIsInFlashWheelRange=true.
3.鼠标移出a.swf滚动区域的时候: 告知JS, 例如mouseIsInFlashWheelRange=false;
4.JS监听鼠标滚动事件, 在事件监听处理函数中我们需要做如下判断
Javascript代码:

复制代码
代码如下:

if(mouseIsInFlashWheelRange==true)
{
/**调用a.swf提供的接口使a.swf模拟滚动*/
/**"flash"是html嵌入的a.swf的ID, value为html滚表滚动的值*/
document.getElementById("flashID").wheelToFlash(value);
/**阻止html页面鼠标事件的冒泡, 通常是event.preventDefault()*/
event.preventDefault();
}
else
{
/**处理html正常的滚动, 我们可以什么都不需要做*/
}

总结: 与方法1相比没有了wmode="window"的限制; Alt+Tab的问题仍然存在。
注意: 在写JS代码的时候我们需要注意兼容性的问题, 不同浏览器对鼠标事件的监听以及滚动值的获取均不相同!
更多精彩内容其他人还在看

html超级链接a的click事件之后跳转href所指向的地址

需要使用a这个超级链接,而又不使用href来完成跳转,在执行完了onClick事件后,a又去跳转href所指向的地址了,下面由两种不错的解决方法,希望对大家有所帮助
收藏 0 赞 0 分享

html中position的一个小用法使用介绍

想必大家对html中position属性并不陌生吧,使用它可以完成普通标签完成不了的任务,下面有个不错的示例,大家可以参考下
收藏 0 赞 0 分享

用按钮触发事件的方式实现背景色的闪烁效果

实现背景色闪烁效果的方法有很多,本文为大家介绍的是用按钮来实现背景色的闪烁,将下面的这段代码加入到body区域中即可
收藏 0 赞 0 分享

在HTML中如何隐藏某段文字具体该怎么实现

文字隐藏的方法有很多,在本文为大家介绍下在HTML中如何隐藏某段文字,具体该怎么实现,需要的朋友可以了解下
收藏 0 赞 0 分享

通过display或visibility来实现HTML元素的显示与隐藏

需要根据某些条件来控制Web页面中的HTML元素显示还是隐藏,可以通过display或visibility来实现,感兴趣的朋友可以了解下本文
收藏 0 赞 0 分享

html table表数据转Json格式示例代码

本文为大家介绍下html table表数据转Json格式,下面有个不错的示例,大家可以参考下
收藏 0 赞 0 分享

HTML中当定义多个class属性时无效的解决方法

为class属性定义多个值,经常会发现定义的样式无效,经测试,在定义多个class值的时候,一定要注意,把自己最喜欢的样式放在后面,否则无效
收藏 0 赞 0 分享

html form表单提交action和url跳转到actiond的区别介绍

form表单的action 与url跳转是不一样的:form表单可以给后台传递数据,url跳转到action只能通过url的参数来传递数据,不懂的朋友可以参考下
收藏 0 赞 0 分享

a标签是否新开一个页面的问题各大网站的打开情况整理

a标签是否新开一个页面的问题,在本文为大家整理了一些各大网站的新页面打开情况,需要的朋友可以参考下
收藏 0 赞 0 分享

如何弹出QQ临时对话框实现不添加好友在线交谈效果

如何不添加好友弹出QQ临时对话框实现在线交谈效果,这样的一个需求,我们真的是太需要了,实现起来也很简单,一行代码即可搞定,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多