色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

IE中createElement需要注意的一個問題

代碼如下:
復制代碼 代碼如下:
var $alertPanel = $( document.createElement("div") );
$alertPanel.css("width","120px").css("height","50px").text("Hello CssRain!");
$('body',parent.document).append($alertPanel);

順著他的意思,我也寫了個Demo,發現確實是這樣。
翻了翻資料,也沒看到類似的問題。
然后使用原生的DOM方法寫了一次,發現也不行,一樣。
復制代碼 代碼如下:
var div = document.createElement("div");
div.style.width = "120px";
div.style.height = "50px";
div.style.border = "solid 1px #000000";
div.innerHTML = "Hello CssRain!";
parent.document.body.appendChild(div);

于是想到既然appendChild要parent.document,那么創建的時候是否也要parent.document.createElement呢?
于是把代碼改成:
復制代碼 代碼如下:
var div = parent.document.createElement("div");
div.style.width = "120px";
div.style.height = "50px";
div.style.border = "solid 1px #000000";
div.innerHTML = "Hello CssRain!";
parent.document.body.appendChild(div);

這樣就成功了, IE6和IE7能用。
看例子:
演示地址:http://demo.jb51.NET/js/IE-createElement/page1.htm
總結:

如果你想在IE6,IE7中創建一個父頁面元素,那么你必須使創建元素屬于父頁面。
復制代碼 代碼如下:
var dummy = parent.document.createElement("div");
var t = parent.document.createElement("table");


在Firefox,IE8中,它允許在一個文檔中創建要追加到另一個文檔的元素。
所以在Firefox,IE8中,可以使用parent.document也可以使用document。

另外google瀏覽器非常怪異,很亂。如果要兼容google瀏覽器,那么建議換種思路吧,比如直接用 parent.函數名() 調父頁面的方法。

JavaScript技術IE中createElement需要注意的一個問題,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 惠水县| 广安市| 金坛市| 西乡县| 南岸区| 邢台县| 昭觉县| 襄城县| 霞浦县| 合山市| 黄陵县| 密山市| 东山县| 临泽县| 新乡市| 建水县| 新沂市| 治县。| 昭觉县| 玛曲县| 张家界市| 台南县| 涟源市| 信宜市| 彭州市| 宝坻区| 洛隆县| 前郭尔| 北海市| 同德县| 繁昌县| 浦城县| 泾阳县| 惠水县| 嘉荫县| 凌云县| 康平县| 申扎县| 甘洛县| 永靖县| 阿鲁科尔沁旗|