2012-10-12 18 views
0

我希望文字根據用戶懸停在哪個圖像而改變。我認爲我有正確的想法,但代碼不起作用。在圖像上使用onmouseover更改文本?

http://jsfiddle.net/6V2TL/

HTML

<p id="test"> 
some text 1 
</p> 
<div id="image1" onmouseover="change1()"> 
    <img src="http://www.helpinghomelesscats.com/images/cat1.jpg"> 
</div> 
<div id="image2" onmouseover="change2()"> 
    <img src="http://cvcl.mit.edu/hybrid/cat2.jpg"> 
</div> 

JS

function change1() { 
    document.getElementById("test").innerHTML = "this is a cute cat"; 
} 
function change2() { 
    document.getElementById("test").innerHTML = "this is a cuter cat"; 
} ​ 

感謝

+2

的jsfiddle使用您的代碼匿名函數包裝,除非另行指定(看一下左邊的選項欄中):http://jsfiddle.net/6V2TL/4/ – Blender

+0

沒錯。將下拉列表的值從「onLoad」更改爲「no wrap(head)」,並且Javascript工作得很好。 –

回答

3

你的代碼是內部和onLoad處理函數,它不能從頁面上運行。左側的第一個下拉菜單改變了這一點,請從列表中選擇「無包裝(頭)」。

演示:http://jsfiddle.net/SO_AMK/35s4C/

function change1() { 
 
    document.getElementById("test").innerHTML = "this is a cute cat"; 
 
} 
 

 
function change2() { 
 
    document.getElementById("test").innerHTML = "this is an angry cat"; 
 
}
<p id="test"> 
 
    some text 1 
 
</p> 
 

 
<div id="image1" onmouseover="change1()"> 
 

 
    <img src="http://lorempixel.com/output/cats-q-c-640-480-1.jpg"> 
 

 
</div> 
 

 
<div id="image2" onmouseover="change2()"> 
 
    <img src="http://lorempixel.com/output/cats-q-c-640-480-2.jpg"> 
 
</div>

+0

謝謝!這有很大幫助。 – sway

1

如果您在控制檯看,你會看到你拋出錯誤,當你徘徊找不到的功能。

默認情況下,JFiddle在頁面加載特殊處理程序後加載代碼到Javascript框中,您希望將代碼更改爲非包裝形式,因此當主體懸停時,全局函數實際存在因此可以訪問它們:http://jsfiddle.net/6V2TL/3/

它位於工具欄左側的選項中。

+0

Whew,關閉一個:D對不起...... –

+0

@ A.M.K不用擔心隊友,只是想幫助OP。這不是一場比賽:) – TheZ

相關問題