使用Jquery .prop()或.data()时获取正确的URL

时间:2012-10-04 19:16:38

标签: jquery twitter-bootstrap modal-dialog href

我正在尝试使用Bootstrap image gallery在模式弹出窗口中获取图像的网址。由于图像是动态加载的,我需要获取该图像的url才能共享它。使用此代码,我得到“未定义”作为我的结果:

  $('#modal-gallery').on('load', function () {
    var modalData = $(this).data('modal'),
    // The current, associated link element:
    linkElement = modalData.$links[modalData.options.index],
    url = $(linkElement).prop('href');      
  $(".info").html("<a href='http://www.addthis.com/bookmark.php' class='addthis_button_compact' addthis:url='" + url + "'>" + "</a>");
   //addthis code   
   addthis.toolbox('.info');
  });

如果我使用此代码,我会得到一个href,但它的格式为“slides / image.jpg”,而不是“http://www.example.com/slides/image.jpg”

 $('#modal-gallery').on('load', function () {
  var modalData = $(this).data('modal'),
    // The current, associated link element:
    linkElement = modalData.$links[modalData.options.index],
    url = $(linkElement).data("href");      
  $(".info").html("<a href='http://www.addthis.com/bookmark.php' class='addthis_button_compact' addthis:url='" + url + "'>" + "</a>");
addthis.toolbox('.info');
 });

1 个答案:

答案 0 :(得分:0)

如果您查看图片的src 属性而不是其属性,您将获得完整的网址:

简单示例:

$("#pic").get(0).src

同样的原则适用于锚标签。要获得他们指向的绝对URL:

$("#link").get(0).href