av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

javascript - 頁面引入的所有的js文件,每個js文件都有window.onload偶爾會某個js文件沒有執行

瀏覽:95日期:2023-05-27 13:56:22

問題描述

1.在A頁面引入a.js和b.js;其中a.js和b.js都用了window.onload沒有問題;但是我在B頁面也引入a.js和c.js,偶爾a.js就跟完全沒有執行一樣但是我直接將a.js中的window.onload中的東西放入B頁面的c.js的onload中,又正確執行了,不曉得是怎么回事??

問題解答

回答1:

window.onload只有一次,所以會出現多個js同時使用它而沖突的問題。解決辦法

1.用jQuery使用ready()方法替換onload2.在window.onload中一次加載所有js文件,例:window.onload=function(){function(a);function(b);} 回答2:

我試了一下,window可以綁定多次,但是最后一次才會生效,你可以對照看下我下面的2個例子來理解你出現的情況。

//方式1: window.onload=function () {console.log('1'); } window.onload=function () {console.log('2'); }// 輸出2// -------------------------------分割線// 方式2: function fn1() {console.log('1'); } function fn2() {console.log('2'); } addEventLoad(fn1); addEventLoad(fn2); //輸出1 2 function addEventLoad(fn){var oldFn = window.onload;if(typeof window.onload != ’function’){ window.onload = fn;}else{ window.onload = function(){oldFn();fn(); }} }回答3:

通過window.onload = function() { ... }方法設置的事件,后面的window.onload值會覆蓋掉前面的,所以,只有最后一次生效。(這個和調用a = 1; a = 2; a =3;是一個道理)

如果需要對window的onload事件進行多次綁定,建議使用addEventListener:

window.addEventListener(’load’, function() { ... }, false);

注意,ID中使用attachEvent而非addEventListener:

window.attachEvent(’onload’, function() { ... });

另外注意,addEventListener中用的是’load’,而attachEvent中用的是’onload’。

回答4:

window.onload()方法只能綁定一次的,多次綁定只有最后一次生效

回答5:

window.onload只會調用最后一個的,之前的都會被覆蓋掉。

標簽: JavaScript
主站蜘蛛池模板: 欧美日韩中文在线观看 | 中文字幕在线视频免费视频 | 欧美综合久久久 | 亚洲欧美激情国产综合久久久 | 国产精品福利网 | 亚洲一区中文 | 免费在线视频一区二区 | 天天操天天摸天天干 | 国产视频三区 | 午夜丰满寂寞少妇精品 | 久久久久免费观看 | 91成人精品 | 黄色av观看 | 黄网站免费观看 | 免费在线一区二区三区 | 亚洲精品久久久久久首妖 | 免费日韩av网站 | 91免费视频 | 精品网站999 | 中文字幕成人在线 | 欧美二区乱c黑人 | 中文字幕在线观看视频网站 | 成人不卡视频 | 国产精品久久一区二区三区 | 羞羞的视频免费看 | 91 中文字幕 | 国产精品一二三区 | www成人免费视频 | 国产精品久久久久久久久免费桃花 | 成人精品国产一区二区4080 | 久久久免费观看视频 | 日本免费黄色 | 欧美在线一区二区三区 | 中文字幕亚洲欧美日韩在线不卡 | 国产99久久 | 亚洲精品一二区 | 国产免费一区二区 | 亚洲电影免费 | 欧美一区二区三区久久精品 | 中文字幕在线不卡播放 | 一区二区三区视频 |