對(duì)于script在html中的擺放位置解析
發(fā)表時(shí)間:2024-05-10 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]以前一直覺得script在html中的任何位置都可以,今天做一個(gè)需求的時(shí)候才更正了自己的錯(cuò)誤思想啊--script的位置也不是隨便放的。本文主要談?wù)撽P(guān)于script在html中的擺放位置。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。希望能幫助到大家。首先是想實(shí)現(xiàn)一個(gè)select標(biāo)簽,有是...
以前一直覺得script在html中的任何位置都可以,今天做一個(gè)需求的時(shí)候才更正了自己的錯(cuò)誤思想啊--script的位置也不是隨便放的。本文主要談?wù)撽P(guān)于script在html中的擺放位置。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。希望能幫助到大家。
首先是想實(shí)現(xiàn)一個(gè)select標(biāo)簽,有是和無(wú)兩個(gè)option,但是在初始化的時(shí)候要求select標(biāo)簽?zāi)J(rèn)選擇空值,所以我在點(diǎn)擊的時(shí)候加了一個(gè)方法讓他把空值刪掉:
XML/HTML Code復(fù)制內(nèi)容到剪貼板
<!DOCTYPE html>
<html>
<head>
<script src="jquery/jquery-1.11.1.min.js"></script>
</head>
<script>
$('#checkcash').click(function () {
if ($('#checkcash').val() == '0') {
$("#checkcash option[value='0']").remove();
}
});
$("#alert").click(function(){
alert("1123");
})
</script>
<body>
是否已提現(xiàn) <select id="checkcash" style="width: 181px">
<option selected="selected" value="0"></option>
<option value="1">是</option>
<option value="2">否</option>
</select>
<input type='button' id='alert' value="anwo">
</body>
</html>
但是這樣并不能達(dá)到想要的效果,起初以為是jquery語(yǔ)法錯(cuò)誤還一直在網(wǎng)上查,改,但是都不管用,后來(lái)突然想到是不是應(yīng)該把script放到后面,試了一下,結(jié)果果真ok了,這才恍然大悟,原來(lái)不是這樣的。
后來(lái)查了一下原因是因?yàn),html文件是自上而下的執(zhí)行方式,但引入的css和javascript的順序有所不同,css引入執(zhí)行加載時(shí),程序仍然往下執(zhí)行,而執(zhí)行到<script>腳本是則中斷線程,待該script腳本執(zhí)行結(jié)束之后程序才繼續(xù)往下執(zhí)行。所以,一般將script放在body之后是因?yàn)楸苊忾L(zhǎng)時(shí)間執(zhí)行script腳本而延遲阻塞。而有一些頁(yè)面的效果的實(shí)現(xiàn),是需要預(yù)先動(dòng)態(tài)的加載一些js腳本,所以這些腳本應(yīng)該放在<body>之前。其次,不能將需要訪問dom元素的js放在body之前,因?yàn)榇藭r(shí)還沒有開始生成dom,所以在body之前的訪問dom元素的js會(huì)出錯(cuò),或者無(wú)效。就是因?yàn)檫@個(gè),在dom沒生成好時(shí)我就給它添加了方法,才導(dǎo)致這樣。
真的應(yīng)該多學(xué)習(xí)很多地方以為所以然了,卻沒深究。以后還要加油!
ps:其實(shí)還有另外一種方法,那就是用jquery的初始化頁(yè)面方法,把上面給標(biāo)簽添加的點(diǎn)擊事件加入到$(function(){})中也是可以的,原理和上面是一樣的,這個(gè)方法是等頁(yè)面加載好了才執(zhí)行,所以不管放在哪都可以了!
相關(guān)推薦:
JavaScript中立即執(zhí)行函數(shù)實(shí)例詳解
JavaScript執(zhí)行順序的簡(jiǎn)單介紹
JavaScript執(zhí)行順序詳細(xì)介紹_基礎(chǔ)知識(shí)
以上就是關(guān)于script在html中的擺放位置解析的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
網(wǎng)站建設(shè)是一個(gè)廣義的術(shù)語(yǔ),涵蓋了許多不同的技能和學(xué)科中所使用的生產(chǎn)和維護(hù)的網(wǎng)站。