在Web開(kāi)發(fā)中,經(jīng)常需要使用javascript進(jìn)行頁(yè)面效果的實(shí)現(xiàn)。其中,打開(kāi)層是比較常見(jiàn)的一種需求,比如彈出框、菜單等。那么在javascript中,如何打開(kāi)層呢?下面我們就來(lái)了解一下。
javascript打開(kāi)層的方法有很多,具體使用哪一種方法,需要根據(jù)實(shí)際情況來(lái)確定。下面我們將介紹其中一些比較常用的方法。
使用CSS實(shí)現(xiàn)
.layer { display: none; position: absolute; top: 100px; left: 100px; width: 200px; height: 200px; background-color: #ccc; }
這是使用CSS實(shí)現(xiàn)打開(kāi)層的方法。通過(guò)將層的display屬性設(shè)置為none,使其默認(rèn)不顯示。需要打開(kāi)層時(shí),使用javascript代碼將其display屬性設(shè)置為block即可。
var layer = document.getElementById("layer"); layer.style.display = "block";
使用innerHTML實(shí)現(xiàn)
var layerHtml = "<div id='layer' style='position:absolute;top:100px;left:100px;width:200px;height:200px;background-color:#ccc;display:none;'></div>"; document.body.innerHTML = layerHtml + document.body.innerHTML;
這是使用innerHTML實(shí)現(xiàn)打開(kāi)層的方法。先使用javascript代碼動(dòng)態(tài)添加一個(gè)層到頁(yè)面中,其display屬性也設(shè)置為none。需要打開(kāi)層時(shí),同樣使用javascript將其display屬性設(shè)置為block即可。
var layer = document.getElementById("layer"); layer.style.display = "block";
使用DOM實(shí)現(xiàn)
var layer = document.createElement("div"); layer.style.display = "none"; layer.style.position = "absolute"; layer.style.top = "100px"; layer.style.left = "100px"; layer.style.width = "200px"; layer.style.height = "200px"; layer.style.backgroundColor = "#ccc"; document.body.appendChild(layer);
這是使用DOM實(shí)現(xiàn)打開(kāi)層的方法。同樣先使用javascript代碼動(dòng)態(tài)創(chuàng)建一個(gè)層,其display屬性默認(rèn)為none。需要打開(kāi)層時(shí),使用javascript將其display屬性設(shè)置為block即可。
var layer = document.getElementsByTagName("div")[0]; layer.style.display = "block";
以上是javascript打開(kāi)層的三種常用方法。當(dāng)然,在實(shí)際開(kāi)發(fā)中,還會(huì)結(jié)合其他技術(shù),比如jQuery等,來(lái)實(shí)現(xiàn)更加豐富的打開(kāi)層效果。