首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

js脚本在ie6中报错,该怎么解决

2013-01-12 
js脚本在ie6中报错这是一个轮播的功能。html xmlnshttp://www.w3.org/1999/xhtml head titlepic p

js脚本在ie6中报错
这是一个轮播的功能。
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<title>pic player</title> 
<script type="text/javascript" src="js/jquery-1.6.2.min.js"></script> 
<script type="text/javascript" src="js/tween.js"></script> 
</head> 
<style type="text/css"> 
img{border:0;} 
</style> 
<body> 
<div id="picplayer" style="position:relative;overflow:hidden;width:392px;height:350px;clear:none;border:solid 1px #ccc;"> 
there is a pic-player 
</div> 
<script> 
var p = $('#picplayer'); 
var pics1 = [{url:'images_hd2/1.jpg',link:'#',time:3000},
{url:'images_hd2/2.jpg',link:'#',time:3000},]; 
initPicPlayer(pics1,p.css('width').split('px')[0],p.css('height').split('px')[0]); 
// 
// 
function initPicPlayer(pics,w,h) 

//选中的图片 
var selectedItem; 
//选中的按钮 
var selectedBtn; 
//自动播放的id 
var playID; 
//选中图片的索引 
var selectedIndex; 
//容器 
var p = $('#picplayer'); 
p.text(''); 
p.append('<div id="piccontent"></div>'); 
var c = $('#piccontent'); 
for(var i=0;i<pics.length;i++) 

//添加图片到容器中 //下面就开始报错了。link is null or an object
c.append('<a href="'+pics[i].link+'" target="_blank"><img id="picitem'+i+'" style="display: none;z-index:'+i+'" src="'+pics[i].url+'" /></a>'); 

//按钮容器,绝对定位在右下角 
p.append('<div id="picbtnHolder" style="position:absolute;top:'+(h-25)+'px;width:'+w+'px;height:20px;z-index:10000;"></div>'); 
// 
var btnHolder = $('#picbtnHolder'); 
btnHolder.append('<div id="picbtns" style="float:right; padding-right:1px;"></div>'); 
var btns = $('#picbtns'); 
// 
for(var i=0;i<pics.length;i++) 

//增加图片对应的按钮
btns.append('<span id="picbtn'+i+'" style="cursor:pointer; border:solid 1px #ccc;background-color:#eee; display:inline-block;"> '+(i+1)+' </span> '); 
$('#picbtn'+i).data('index',i); 
$('#picbtn'+i).click( 
function(event) 

if(selectedItem.attr('src') == $('#picitem'+$(this).data('index')).attr('src')) 

return; 

setSelectedItem($(this).data('index')); 

); 

btns.append(' '); 
/// 
setSelectedItem(0); 
//显示指定的图片index 
function setSelectedItem(index) 

selectedIndex = index; 
clearInterval(playID); 
//alert(index); 
if(selectedItem)selectedItem.fadeOut('fast'); 
selectedItem = $('#picitem'+index); 
selectedItem.fadeIn('slow'); 
// 
if(selectedBtn) 

selectedBtn.css('backgroundColor','#eee'); 
selectedBtn.css('color','#000'); 

selectedBtn = $('#picbtn'+index); 
selectedBtn.css('backgroundColor','#000'); 
selectedBtn.css('color','#fff'); 
//自动播放 
playID = setInterval(function() 

var index = selectedIndex+1; 
if(index > pics.length-1)index=0; 


setSelectedItem(index); 
},pics[index].time); 





</script> 


</body> 
</html>

在其他版本的浏览器上没有问题,IE6上就报错了。这个是不是要加个ie6 的脚本。求大神解答,帮我改改
[解决办法]

var pics1 = [{url:'images_hd2/1.jpg',link:'#',time:3000},
{url:'images_hd2/2.jpg',link:'#',time:3000},];

这里出问题了,把最后一个逗号去了,不然IE6会当成三个元素。
var pics1 = [{url:'images_hd2/1.jpg',link:'#',time:3000},
{url:'images_hd2/2.jpg',link:'#',time:3000},];
[解决办法]
在 IE6 IE7 IE8(Q) 中不能在 JSON 字符串或对象直接量的最后一个键值对后加 ','
[解决办法]

var pics1 = [{url:'images_hd2/1.jpg',link:'#',time:3000},
{url:'images_hd2/2.jpg',link:'#',time:3000}];  //定义数组,去掉末尾","

热点排行