IE8 的 PreventDefault 替代方案
情况:尝试修改 VideoJS.com 以便与 IE8 和 Youtube Chromeless API 配合使用。
问题:进度条拖动不起作用(event.preventDefault() 出错;根据调试“不支持”)
演示:http://alpha.dealertouch.mobi/video/demo.html
我尝试过的:跳过 '当它是 IE 时,我会使用“preventDefault”,但如果我这样做,我将失去进度条的功能(向前和向后拖动/单击)
问题:解决 IE8 的此问题的最佳方法是什么?
Situation: Trying to modify VideoJS.com in order to work with IE8 and Youtube Chromeless API.
Problem: Progressbar dragging doesn't work (error on event.preventDefault(); 'not supported' according to debug)
Demo: http://alpha.dealertouch.mobi/video/demo.html
What I tried: Skip 'preventDefault' when it's IE, but if I do that I'll lose the functionality of the progressbar (drag/click forward and backward)
Question: What is the best way to solve this problem for IE8?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
我使用类似的东西:
event.returnValue
属性是与preventDefault
最接近的 IE 等效项。使用
有时也可以工作,但有时与 jQuery 混合时可能会导致意外的行为(jQuery 也可以
stopPropagation
...这通常是你想要的,但是。 ..),所以我宁愿不依赖它。I use something like:
the
event.returnValue
property is the closest IE equivalent topreventDefault
.Using
can sometimes also work, but it can lead to unexpected behavior sometimes when mixed with e.g. jQuery (jQuery also does
stopPropagation
...which is usually what you want, but...), so I prefer not to rely on it.IE8不支持
preventDefault
;它有returnValue
相反。不过,jQuery 应该为您标准化这一点。您确定在 jQuery 事件包装器(而不是实际的事件对象)上调用preventDefault
吗?IE8 does not support
preventDefault
; it hasreturnValue
instead. jQuery should normalize that for you, though. Are you sure you are callingpreventDefault
on the jQuery event wrapper (and not the actual event object)?只需使用
它的跨浏览器,并且与 event.preventDefault() 具有相同的目的;
jQuery 中的相同指令略有不同,它还包括 stopPropagation()。
Just use
it's cross browser and has the same purpose as event.preventDefault();
THe same instruction in jQuery is slightly different, it includes also stopPropagation().
使用
jquery 文档
Use
jquery docs