JavaScript (JS)常用方法
正则修改 DOM 对象内容(使用JQuery库)
例子:把DOM对象里的把<span style="color: #008080;">NUM</span>
替换成空格
const regex = /\<span\ style\=\"color\:\ \#008080\;\"\>(\s\d+|\d+)\<\/span\>/gm; let codeLine; let preCodeLine; preCodeLine = obj.html().replace(regex, ` `); codeLine = $("<div/>").html(preCodeLine); // 其中$("<div/>")算是空DOM对象
这样之后,仍然是一个DOM对象,只是完成了HTML内容的正则替换。
也可以用原生JS实现,具体见JQ源码
键盘事件
1 <html> 2 <head> 3 <script type="text/javascript"> 4 function whichButton(event) 5 { 6 alert(event.keyCode) 7 } 8 9 </script> 10 </head> 11 12 <body onkeyup="whichButton(event)"> 13 <p><b>注释:</b>在测试这个例子时,要确保右侧的框架获得了焦点。</p> 14 <p>在键盘上按一个键。消息框会提示出该按键的 unicode。</p> 15 </body> 16 17 </html>
JS实现键盘监听(包括组合键)带键值表 如Ctrl+V
document.onkeydown=function(event){ var e = event || window.event || arguments.callee.caller.arguments[0]; { if (e.keyCode == 86 && e.ctrlKey) { alert("你按下了ctrl+V"); } } };
博客园实现快捷键Alt+上下方向键调到<h2>目录
按键名 KeyCode Up 38 Down 40 Alt_L 18 Alt_R Ctrl ctrlKey (大小写敏感) Alt altKey
1 document.onkeydown=function(event){ 2 var e = event || window.event || arguments.callee.caller.arguments[0]; { 3 if (e.keyCode == 40 && e.altKey) { 4 alert("你按下了alt+down"); 5 } 6 } 7 };
然后把alert()换成一个定位到<h2>的函数就OK
document.getElementsByTagName("h2")[num++].scrollIntoView();
1 <script type="text/javascript"> 2 // 按下Alt+Down遍历跳转h2 3 var num = 0; 4 document.onkeydown=function(event){ 5 var e = event || window.event || arguments.callee.caller.arguments[0]; { 6 7 var k = document.getElementsByTagName("h2"); 8 9 if (e.keyCode == 40 && e.altKey) { 10 num = (num > k.length)? k.length: num; 11 k[num++].scrollIntoView(false); 12 console.log("Alt+Down"); 13 //alert("你按下了alt+down"); 14 } 15 else if (e.keyCode == 38 && e.altKey) { 16 num = (num < 0)? 0: num; 17 k[num--].scrollIntoView(); 18 console.log("Alt+Up"); 19 //alert("你按下了alt+up"); 20 } 21 22 } 23 }; 24 </script>
如果需要其他header,可以引用远程JQ库(不过好像博客园用了JQ库),然后用
$(":header"); 代替 document.getElementsByTagName("h2")[num++].scrollIntoView();
注意:博客园的JS代码里不能有alert( 字段,注释也不行
使得comfirm事件永远为真
var confirm=function(){return 1}
console.log输出字体颜色
自动播放
原帖:[Web] 解除 网课失去焦点/离开页面 就自动暂停 的限制-52pojie
本帖最后由 tuziang 于 2019-8-12 18:58 编辑
h5
如果视频是video元素,可以写个定时器,每秒钟设置一下播放状态
f12打开开发者工具,切换到console面板,输入下面代码并回车
setInterval(function () {
var current_video = document.getElementsByTagName('video')[0]
current_video.play()
}, 1000)
flash
如果是flash视频,可以重写失去焦点函数。
f12打开开发者工具,切换到console面板,输入下面代码并回车
if (!-[1,] && !window.XMLHttpRequest || navigator.userAgent.indexOf("MSIE 8.0") > 0) {
document.onfocusout = function () {
return true;
}
} else {
window.onblur = function () {
return true;
}
}
jQuery
这种方法没有验证,适合引用jQuery的网课平台。
方法:在浏览器地址栏输入
javascript:jQuery.fn.pauseMovie=function(){}
--------蓝天上的云_转载请注明出处.