JQuery javascript参数在IE和Chrome中未定义

JQuery javascript argument undefined in IE and Chrome

本文关键字:Chrome 未定义 IE javascript 参数 JQuery      更新时间:2023-09-26

我有以下脚本,它可以很好地与FF和Safari。

function swapimage(cid) {
    jQuery('.imageshadowlg').attr("src", jQuery(cid).attr("src").replace('/thumb/', '/final/'));
                    }
<a href='javascript:;' id='expic1link' onclick='swapimage(expic1)' ><img id='expic1' src='../gallery/pics/thumb/test.jpg' /></a>

在IE中,我得到以下错误

SCRIPT5009: 'expic1' is undefined 

Chrome给出以下错误

Uncaught TypeError: Cannot call method 'replace' of undefined
swapimagegal.js:139
(anonymous function)s_gallery.aspx:1
onclick

这些脚本位于单独的js文件中。

任何想法?

当你传递任何字符串作为参数时,它应该用引号括起来,函数中的选择器也是错误的。试试这个

function swapimage(cid) {
    jQuery('.imageshadowlg').attr("src", jQuery('#'+ cid).attr("src").replace('/thumb/', '/final/'));
                    }
<a href='javascript:;' id='expic1link' onclick='swapimage("expic1")' ><img id='expic1' src='../gallery/pics/thumb/test).jpg' /></a>

无论您传递的是什么选择器都不起作用。我猜你忘记在名字前加上#.了。