【发布时间】:2017-04-25 15:17:22
【问题描述】:
在 THIS 页面上,我有一个带有“video-wrapper”类的 div,当点击播放器的切换全屏按钮时,它是动态添加的“全屏”类。
我的目标是删除“全屏”类不仅通过使用切换全屏按钮,而是通过按键盘上的“Esc”。为了这个目的,我写了代码:
$(document).on('keyup',function(evt) {
if (evt.keyCode == 27 && $('.video-wrapper').hasClass('full-screen')) {
console.log(evt.keyCode);
$('.video-wrapper').removeClass("full-screen");
$('input.fullscreen').removeClass('active');
}
});
问题在于这需要两个“Esc”键击而不是一个。第一个只存在浏览器的全屏模式,第二个删除“全屏”类。
我怎样才能存在浏览器的全屏模式和用一个“Esc”键删除“全屏”类?
【问题讨论】:
-
如果你把它改成
keydown而不是up,它可以工作吗? -
不,不是
-
看起来像一个时间问题,因此解决方案可能是将所有代码包装在一个大约十分之一 (100) 秒的超时函数内 ($(document).on('keyup' ,function(evt) {) sitepoint.com/jquery-settimeout-function-examples
-
不,我测试了,问题不在于。
-
oki, -- 如果您发现控制台中有错误需要解决 (GET angelarusu.net/test/googleads_ima_html5_samples/advanced/l.css net::ERR_BLOCKED_BY_CLIENT ls.php:7 GET imasdk.googleapis.com/js/sdkloader/ima3.js net::ERR_BLOCKED_BY_CLIENT ls.php :8 GET angelarusu.net/test/googleads_ima_html5_samples/advanced/… net::ERR_BLOCKED_BY_CLIENT ls.php:306 Uncaught ReferenceError: Application is not defined at window.onload (ls.php:306) window.onload @ ls.php:306) 你需要使用 https:// /........
标签: javascript android jquery html key