2013-05-08 104 views
0

我試圖做一個動態的iframe,基於用戶點擊的圖片來改變它的內容頁面。Jquery class click this'

到目前爲止,我已經創建了圖片並存儲在「標題」屬性中與新屏幕相關的元素。我的代碼到目前爲止:

$(document).ready(function() { 

    $('.item').click(function() { 
     var title = $(this).title; 
     var url = 'http://wiki.mainpart.com/' + encodeURIComponent(title) 

     $('#innerdiv').attr('src', url);   

     console.log(url); 
    }); 
}); 

但是,此代碼不起作用。該URL永遠沒有附加標題,控制檯日誌只顯示url的主要部分。有人可以建議一種方法,我可以得到這個工作?

+0

其他答案可以歸結爲,只有少數特殊屬性可以作爲元素的屬性直接訪問。 「標題」似乎不是其中之一。因此,在使用jQuery或僅使用JavaScript時,需要'elem.attr('title')''elem.getAttribute('title')'。 – 2013-05-08 20:21:13

+0

真正的問題是jQuery對象沒有與DOM節點相同的屬性。如果標題是當前元素可用的屬性(對於圖像,至少在chrome中),您可以直接在'this'上用'this.title'訪問它 – 2013-05-08 20:24:32

回答

1
 var title = $(this).attr('title'); 

會得到你的title屬性。

2

試試這個 -

$('.item').click(function() { 
     var title = $(this).attr('title'); // <-- see change in this line 
     var url = 'http://wiki.mainpart.com/' + encodeURIComponent(title) 

     $('#innerdiv').attr('src', url);   

     console.log(url); 
});