是否有可能將此jquery腳本轉換爲非jQuery腳本?添加類與setTimeout沒有Jquery
window.setTimeout(function(){$("#fullcontent").addClass("onload");}, 2100);
我想class
「的onload」 添加到div
稱爲 「fullcontent」 與2,1s的setTimeout
。
是否有可能將此jquery腳本轉換爲非jQuery腳本?添加類與setTimeout沒有Jquery
window.setTimeout(function(){$("#fullcontent").addClass("onload");}, 2100);
我想class
「的onload」 添加到div
稱爲 「fullcontent」 與2,1s的setTimeout
。
window.setTimeout(function() {
document.querySelector('#fullcontent').className = "onload";
}, 2100);
例子:http://codepen.io/anon/pen/LGMKOJ
編輯:如果你不希望覆蓋元素的當前等級:
使用.querySelector()
和
.concat()
window.setTimeout(function() {
var element = document.querySelector('#fullcontent');
var className = element.className;
element.className = className.concat(" onload");
}, 2100);
比替代不必要的和慢( GEBI和+=
)。
如果你確定#fullcontent
已經沒有階級「的onload」,這將很好地工作:
setTimeout(function() {
document.getElementById("fullcontent").className += " onload";
}, 2100);
的更安全,更清潔的方式,以避免重複類,如果#fullcontent
可能已經被賦予了「的onload」類:
setTimeout(function() {
var fullcontent = document.getElementById("fullcontent");
if(fullcontent.className.indexOf("onload") === -1) {
fullcontent.className += " onload";
}
}, 2100);
如果#fullcontent
凡沒有類,你不需要追加,你可以簡單地覆蓋:
setTimeout(function() {
document.getElementById("fullcontent").className = "onload";
}, 2100);
一個臨時變量和.concat()? + =運算符不會更簡單嗎? – nnnnnn
非常感謝!這樣做的工作,我不能投你的評論,但這是什麼幫助我:) – user2127403
沒問題!不要擔心upvote,我認爲你可以接受它 – Pabs123