JavaScript的新手,需要一只手......
我的图片会随着点击而改变:
<img alt="" src="header.gif" id="imgClickAndChange" onclick="changeImage()"/>
</p>
<script language="javascript">
function changeImage() {
if (document.getElementById("imgClickAndChange").src == "brain.gif")
{
document.getElementById("imgClickAndChange").src = "brain.gif";
}
else
{
document.getElementById("imgClickAndChange").src="brain.gif";
}
} </script>
但我想点击brain.gif链接到名为#two的div。如何将新元素作为链接?
答案 0 :(得分:1)
这不是很优雅,但我相信这是你想要的?我将点击处理程序移到了HTML之外,你可以做一些清理工作,比如存储imgClickAndChange而不是每次都查找它,但是你明白了这一点!
HTML:
<img alt="" src="header.gif" id="imgClickAndChange" />
JavaScript的:
function changeImage() {
if (document.getElementById("imgClickAndChange").src == "brain.gif") {
document.location.hash = "#something"; // this will jump you down the page to an element with ID of "something"
} else {
document.getElementById("imgClickAndChange").src = "brain.gif";
}
}
var img = document.getElementById("imgClickAndChange");
img.onclick = changeImage;
答案 1 :(得分:1)
您必须将图像包装在锚标记中,这样您就可以设置锚点的href
。此外,您应该将this
传递到onclick
HTML:
<a href="#test"><img alt="" src="header.gif" id="imgClickAndChange" onclick="changeImage(this)"/></a>
JS:
function changeImage(obj) {
if (obj.src == "brain.gif")
{
obj.src = "brain.gif";
}
else
{
obj.src="brain.gif";
}
//Change the href of the anchor
obj.parentNode.href = "#two";
console.log(obj.parentNode.href);
}