[英]Javascript loading an image on hover over a link
我是Java腳本的新手,正在設計我的網站,但是當用戶將鼠標懸停在家里時,我想在網頁的特定位置加載新圖像,這是代碼。
<html>
<head>
</head>
<body>
<img src="yourImage.jpg" alt="Home" id="image1" onmouseover="image1.src='home.jpg';" onmouseout="image1.src='myImage.jpg';" /> <br />
<a href="#" onmouseover=image1.src='home.jpg';" onmouseout="image1.src='yourImage.jpg';">Hoover Me!</a>
</body>
</html>
該代碼無法正常工作。請幫助我找出代碼中的錯誤。
在嘗試操作圖像對象之前,必須使用方法document.getElementById()
獲取圖像對象:
<body>
<img src="yourImage.jpg" alt="Home" id="image1" onmouseover="document.getElementById('image1').src='home.jpg';" onmouseout="document.getElementById('image1').src='myImage.jpg';" /> <br />
<a href="#" onmouseover="document.getElementById('image1').src='home.jpg';" onmouseout="document.getElementById('image1').src='yourImage.jpg';">Hoover Me!</a>
</body>
您應該考慮使用JQuery來完成此類工作。
image1
沒有任何意義。 您將需要使用document.getElementById('image1').src
而不是image1.src
。 a
標簽的onmouseover
屬性的引號。 除了不使用document.getElementById,您還將在鼠標懸停時遇到延遲,除非已預先加載了圖像。
您不能image1.src
img稱為image1.src
,而必須先分配image1=document.getElementById('image1')
然后再將其稱為image1.src
。 還有一種更簡單的方法可以做到這一點。 您還可以在JavaScript中將當前圖像或對象稱為this.src
。 請在以下更改中查看更正后的代碼:
<html>
<head>
</head>
<body>
<img src="yourImage.jpg" alt="[ Home ]" id="image1" onmouseover="this.src='home.jpg';" onmouseout="this.src='myImage.jpg';" /><br />
<a href="#" onmouseover="document.getElementById('image1').src='home.jpg';" onmouseout="document.getElementById('image1').src='yourImage.jpg';">Hoover Me!</a>
</body>
</html>
要從其自身的內聯屬性訪問img元素,您需要使用'this'關鍵字:
<img src="yourImage.jpg" alt="Home" id="image1" onmouseover="this.src='yourOtherImage.jpg';" />
除了內聯之外,您還可以使用javascript庫(如jQuery)(如此處所述) ,如果您以后要執行更多操作(例如添加動畫),它將為您提供更大的靈活性,但這取決於您以及您面臨的挑戰感覺像:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.