JavaScript (JS)常用方法

正则修改 DOM 对象内容(使用JQuery库)

例子:把DOM对象里的把<span style="color: #008080;">NUM</span> 替换成空格

const regex = /<span style="color: #008080;">(sd+|d+)</span>/gm;
let codeLine;
let preCodeLine;

  preCodeLine = obj.html().replace(regex, ` `);
  codeLine = $("<div/>").html(preCodeLine);

// 其中$("<div/>")算是空DOM对象
View Code

这样之后,仍然是一个DOM对象,只是完成了HTML内容的正则替换。

也可以用原生JS实现,具体见JQ源码

键盘事件

被按的按键的 unicode 是?

 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");  
                    }
            }
 };       
View Code

博客园实现快捷键Alt+上下方向键调到<h2>目录 

按键名  KeyCode

Up      38

Down    40

Alt_L     18

Alt_R

      

Ctrl         ctrlKey  (大小写敏感)

Alt        altKey
按键名  KeyCode&特殊键
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 };            
Alt+Down测试

 然后把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>
[完整版] JS按下Alt+Down 遍历跳转到

如果需要其他header,可以引用远程JQ库(不过好像博客园用了JQ库),然后用

$(":header"); 代替 document.getElementsByTagName("h2")[num++].scrollIntoView();

详见:jQuery获取h1-h6元素的值

 注意:博客园的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(){}
--------蓝天上的云_转载请注明出处.
原文地址:https://www.cnblogs.com/yucloud/p/10923095.html