有幾個的所有主題在這裏:
問題是你$('.cboxPhoto').attr('src');
通話的時間......它的運行文檔之前做好準備選擇找到節點。
還有另外一個問題:你是誤用創建twitter
,google
等
移動的一切,當到您的onReady函數,然後改變單引號到雙引號10,包括你的報價變量,它應該工作:
jQuery(document).ready(function() {
var imgSrc = $('.cboxPhoto').attr('src');
var twitter = "<a rel='nofollow' href='https://twitter.com/intent/tweet?url="+imgSrc+"&text=Check out JG Pet Photography&hashtags=dogs,photos'></a>";
var facebook = "<a rel='nofollow' href='https://www.facebook.com/sharer/sharer.php?u="+imgSrc+"></a>";
var google = "<a rel='nofollow' href='https://plus.google.com/share?url="+imgSrc+"></a>";
jQuery('#cboxContent').append(
'<div id="cboxSocial" class="icon-soc">' + imgSrc + twitter + facebook + google + shop + '</div><div class="clear"></div>');
});
如果你想做到這一點時,點擊$('.cboxPhoto').attr('src');
然後你需要分配的onclick處理程序:
jQuery(document).ready(function() {
$('.cboxPhoto').click(function(){
var imgSrc = $(this).attr('src');
var twitter = "<a rel='nofollow' href='https://twitter.com/intent/tweet?url="+imgSrc+"&text=Check out JG Pet Photography&hashtags=dogs,photos'></a>";
var facebook = "<a rel='nofollow' href='https://www.facebook.com/sharer/sharer.php?u="+imgSrc+"></a>";
var google = "<a rel='nofollow' href='https://plus.google.com/share?url="+imgSrc+"></a>";
jQuery('#cboxContent').append(
'<div id="cboxSocial" class="icon-soc">' + imgSrc + twitter + facebook + google + shop + '</div><div class="clear"></div>');
});
});
最後,如果有問題的圖像被動態插入到頁面加載後的DOM,你可能想要做這樣的事情:
$(document).ready(function(){
$(document.body).on('click', '.cboxPhoto' ,function(){
var imgSrc = $(this).attr('src');
var twitter = "<a rel='nofollow' href='https://twitter.com/intent/tweet?url="+imgSrc+"&text=Check out JG Pet Photography&hashtags=dogs,photos'></a>";
var facebook = "<a rel='nofollow' href='https://www.facebook.com/sharer/sharer.php?u="+imgSrc+"></a>";
var google = "<a rel='nofollow' href='https://plus.google.com/share?url="+imgSrc+"></a>";
jQuery('#cboxContent').append(
'<div id="cboxSocial" class="icon-soc">' + imgSrc + twitter + facebook + google + shop + '</div><div class="clear"></div>');
});
})
你需要寫的'ATTR()'點擊事件後。在頁面加載時寫它會給你'undefined',因爲稍後會生成類元素。 –
使用prop而不是attr作爲attr在prop給出動態值時給出靜態值。也把它放在document.ready – vinayakj