来自src的onclick setAttribute href

时间:2011-06-13 12:06:33

标签: javascript jquery onclick href setattribute

我正在开发一个项目,当缩略图被选中时,将缩略图图像交换为更大的图像,但它工作正常,我现在希望最终用户能够点击较大的图像以在jquery中显示它.lightbox-0.5。问题是在选择缩略图后,加载的图像没有href。我希望我可以使用onclick事件将图像src传递给href,但我无法弄清楚如何使其工作。

这是我的代码

<script type="text/javascript">
function swaphref(image) {

document.getElementById('image').setAttribute('href', this.src);
//window.alert(document.getElementById('image').src);
}
</script>

<body>
<div class="productimage" id="gallery"><a onclick="swaphref(this)"><img id="image" img src="product_images/<?php echo $targetID; ?>/<?php echo $targetID; ?>.jpg" width="253" height="378" border="0" /></a></div>

</body>

4 个答案:

答案 0 :(得分:3)

确定。我得到了这个工作。 'a'缺少一个id。

这是代码.....

<script type="text/javascript">
function swaphref(imagehref) {

document.getElementById('imagehref').setAttribute('href', image.src);

//window.alert(document.getElementById('image').src);
//window.alert(document.getElementById('imagehref').href);
}
</script>

<body>
<div class="productimage" id="gallery"><a href="#" id="imagehref"     onclick="swaphref(this)"><img id="image" img src="product_images/<?php echo $targetID; ?  >/<?php echo $targetID; ?>.jpg" width="253" height="378" border="0" /></a></div>

</body>

感谢所有试图提供帮助的人。

答案 1 :(得分:0)

我认为您混淆了hrefsrc属性。看看你的代码,我看到两件事:

document.getElementById('image')。setAttribute('href',this.src);    //window.alert(document.getElementById('image')SRC);

你正在设置图像的href属性,它应该是src,你从链接获得src属性,它应该是href。奇怪的是,你在window.alert中正确

所以:

document.getElementById('image')。setAttribute('src',this.href');    window.alert(的document.getElementById( '图像')。SRC

应该工作。

答案 2 :(得分:0)

var image = document.getElementById('image');
image.setAttribute('href', image.src);

应该工作。

答案 3 :(得分:0)

更改此行

document.getElementById('image').setAttribute('href', this.src); 

这样

document.getElementById('image').setAttribute('src', this.href);