function itemWeb(){
if(document.getElementsByTagName('li').length>10){
var str = "";
var obj = document.getElementById("item").innerHTML.split("</li>");
for(var i=0;i<8;i++){
str = str + obj[i] + "</li>";
}
str = str + '</ul></div><div class="block"><ul class="select_options">';
for(var i=8;i<obj.length;i++){
str = str + obj[i] + "</li>";
}
document.getElementById("item").innerHTML = str;
}
else{
document.getElementById("page").style.display="none";
}
}
这是在ie下显示的效果
这是在google下显示的效果
是js的问题导致的吗?
不是样式问题,是js在ie下没有对图片按8个一页进行div分隔,直接将所有图片显示在一个div中。也就是在ie下没有循环div将图片分页
追答你好像第二个UL没有闭合?第二次for循环之后,没有加...
追问问题好像是大小写的原因,我在代码中写的是小写的,想在将li该为大写LI在ie下就行了,但是在Google下又有问题
var obj = document.getElementById("item").innerHTML.split("");
是我的html的开头有定义吗?
那就是IE下。innerHTML返回的是大写的标签
如果内容不包含英文,可以用
toLocaleLowerCase()转换成小写字符。那用小写分割成数组就可以了
不行就进行浏览器判断:
if(document.all){
大写分割
}else{
小写分割
}