作者HiroshiKen (丸小管)
看板Web_Design
标题[问题] IE fail
时间Thu Jan 4 23:19:55 2007
各位好,JS新手上路..遇到了一点问题..
在下想在乐多的banner说明栏内上使用外连js加入一单纯的导览选单
banner区块的配置大致如下
┌
div #banner ────────┐
│┌
h1.blogtitle──────┐│
││标题 ││
│└────────────┘│
│┌
div .description────┐│
││<外连script></script> ││
│└────────────┘│
└──────────────┘
我想令该部分变成
┌
div #banner ────────┐
│┌
h1.blogtitle──────┐│
││标题 ││
│└────────────┘│
│┌
div .description────┐│
││<ul id="mainmenu"> ││
││ <li>连结</li> ││
││ <li>连结</li> ││
││</ul> ││
│└────────────┘│
└──────────────┘
会使用外连js是担心说明栏字数限制的问题
以下是我使用的外连选单内容
外连js部分
--------------------------------------
function addMainmenu()
{
var menuUl = document.createElement("ul");
menuContent = new Array(2)
menuContent[0] = "连结文字1";
menuContent[1] = "连结文字2";
menuUrl = new Array(2)
menuUrl[0] = "
http://xxx";
menuUrl[1] = "
http://ooo";
if (document.getElementById)
{
for (i=0;i<menuContent.length;i++)
{
var text = document.createTextNode(menuContent[i]);
var alink = document.createElement("a");
var menuLi = document.createElement("li");
alink.appendChild(text);
alink.href = menuUrl[i];
menuLi.appendChild(alink);
menuUl.appendChild(menuLi);
}
var bannerDIV = document.getElementById("banner");
bannerDIV.appendChild(menuUl);
menuUl.id = "mainmenu";
}else {
document.write("<" + "ul id=\"mainmenu\"" + ">");
for (i=0;i<menuContent.length;i++){
document.write("<" + "li" + ">");
document.write("<" + "a href=\"" + menuUrl[i] + "\">");
document.write( menuContent[i] + "<" + "/a" + ">");
document.write("<" + "/li" + ">");
}
document.write("<" + "/ul" + ">")
}
}
addMainmenu();
------------------------------------
这部分在Fx上面跑是没有问题的,但万万没想到一换成IE浏览,读取到description
栏位後,就显示IE发生错误视窗,之後就自动切到找不到网页的画面。
原先制作了一个仅含 DIV #banner 的网页测试,在两浏览器下都是没有问题的,
不知道到底是发生了什麽问题让IE产生这麽严重的错误,还是发生了JS冲突?毕竟
这blog上并没有使用多少js的部分?还是发生了我疏忽的撰写方式..呃
原始的页面在
http://blog.roodo.com/3forks
而外连的js在
http://3forksfilm.googlepages.com/3forks.js
出问题的部分已经先用注解让停止运作了
希望有人能够帮忙解答..不好意思..
注: ul
#mainmenu 先使用css隐藏了
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.126.19.41
※ 编辑: HiroshiKen 来自: 122.126.19.41 (01/04 23:21)
1F:→ HiroshiKen:似乎是if叙述的问题..继续测试 囧 01/05 00:08
2F:→ HiroshiKen:自问自答,问题出在appendChild部分 01/05 00:24
3F:→ HiroshiKen:原先指定到append到 #banner之内,後来改成 append到 01/05 00:24
4F:→ HiroshiKen:div .description 内问题就解决了.. 01/05 00:25