2011-12-29 11 views
1

私は次のスクリプトを持っていて、FFとSafariで正常に動作します。 IEで IEとChromeでJQuery javascriptの引数が未定義

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> 

、私はChromeはこれらのスクリプトは、別のjsファイルに配置されている

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

次のエラーを与えている次のエラーに

SCRIPT5009: 'expic1' is undefined 

を取得しています。

アイデア?

+0

おそらく、 'onclick = 'swapimage("#expic1 ")''を試してみるのですが、それはちょうど推測です。 –

答えて

5

引数として文字列を渡すときは、引用符で囲む必要があります。関数のセレクタも間違っています。試してみてください

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> 
+0

それは完全に意味をなさない。どうもありがとうございます! – shinya

0

渡すセレクタは機能しません。私の推測では、名前の前に#または.を入れるのを忘れたことになります。

関連する問題