本文目錄一覽:
- 1、js動態加載其他js文件後本頁面數據刷新問題?
- 2、前端動態加載JS
- 3、為什麼靜態加載的頁沒問題,js動態加載的就不出來
- 4、js 動態加載事件的幾種方法總結
- 5、前端只有 js,動態加載 html 內容是什麼技術
- 6、爬取JS動態加載的網站,文字內容為編碼
js動態加載其他js文件後本頁面數據刷新問題?
這種情況應該是time.js還沒有加載完成就輸出了GB,GB2。
動態創建的js因為是異步加載,所以可能沒有完全加載,就往下執行。
應該需要保證加載完成後,再根據回調函數往下執行,就能保證輸出是正確的。
前端動態加載JS
最近機頂盒遇到一種特殊場景需要按需加載js,所以特此記錄動態加載JS的方法
這個方法加載的是本地的js,如果要加載非本地js的話,應該要加上crossorigin頭。
為什麼靜態加載的頁沒問題,js動態加載的就不出來
動態加載的話有可能是因為異步的問題,在js加載之前就訪問了該js中的變量
js 動態加載事件的幾種方法總結
有些時候需要動態加載javascript事件的一些方法
往往我們需要在
JS
中動態添加事件,這就涉及到瀏覽器兼容性問題了,以下談及的幾種方法,我們也常常混合使用。
方法一、setAttribute
var
obj
=
document.getElementById(“obj”);
obj.setAttribute(“onclick”,
“javascript:alert(‘測試’);”);
這裡利用
setAttribute
指定
onclick
屬性,簡單,很好理解,
但是:IE
不支持,IE
並不是不支持
setAttribute
這個函數,而是不支持用
setAttribute
設置某些屬性,包括對象屬性、集合屬性、事件屬性,也就是說用
setAttribute
設置
style、onclick、onmouseover
這些屬性在
IE
中是行不通的。
方法二、用
attachEvent
和
addEventListener
IE
支持
attachEvent
obj.attachEvent(“onclick”,
Foo);
function
Foo()
{
alert(“測試”);
}
也可寫在一起
obj.attachEvent(“onclick”,
function(){alert(“測試”);});
其它瀏覽器支持
addEventListener
obj.addEventListener(“click”,
Foo,
false);
function
Foo()
{
alert(“測試”);
}
同樣也可寫在一起
obj.addEventListener(“click”,
function(){alert(“測試”);},
false);
注意
attachEvent
的事件帶
on,如
onclick,而
addEventListener
不帶
on,如
click。
順便說一下
addEventListener
的第三個參數(雖然很少用)
useCapture
–
如果為
true,則
useCapture
指示用戶希望啟動捕獲。啟動捕獲後,所有指定類型的事件將在被指派到樹中其下面的任何
EventTargets
之前指派給已註冊的
EventListener。正在通過樹向上
bubbling
的事件將不觸髮指定的使用捕獲的
EventListener。
綜合應用
複製代碼
代碼如下:
if
(window.attachEvent)
{
//IE
的事件代碼
}
else
{
//其它瀏覽器的事件代碼
}
方法三、事件
=
函數
例:obj.onclick
=
Foo;
這在多個瀏覽器中均支持,這是屬於舊的規範(方法二屬於
DOM2
的規範),不過由於使用方便,用的場合也比較多。
下面是我的解決辦法:
複製代碼
代碼如下:
function
show(){
alert(“Hello,
world!!!”);
}
obj.setAttribute(‘onclick’,document.all
?
eval(function(){show()})
:
‘javascript:show()’);
前端只有 js,動態加載 html 內容是什麼技術
這個是為了防止代碼別人盜用,直接把html得代碼寫進了js裡面,源碼裡面只放一個js得調用,然後就算你拿到js文件也不能馬上用,因為一般都會加密,你先要解除加密,然後還要排列好,不然亂七八糟排在一起看的很累。一般沒有多少人會去破解,又累又費時間,還不一定能破解,有這個時間都可以做個簡單的企業站了。
爬取JS動態加載的網站,文字內容為編碼
可以用採集器,直接模擬人操作,網站怎麼加載都無所謂,模擬點擊,等加載完後提取數據就可以了。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/304843.html