2011-10-15 74 views
3
<script language="JavaScript"> 
function changeHistory(which) { 
document.getElementById('maincontent').innerHTML="<iframe src='history.html' width='100%' height='100%' scrolling='auto'></iframe>"; 
} 

function changeFigures(which) { 
document.getElementById('maincontent').innerHTML="<iframe src='figures.html' width='100%' height='100%' scrolling='auto'></iframe>"; 
} 
</script> 


<li><a title="History" href="history.html" onclick="changeHistory(this); return false;">History</a></li> 
<li><a title="Figures" href="figures.html" onclick="changeFigures(this); return false;">Figures</a></li> 

我在做對吧?如何不使用不同的JavaScript方法爲不同的鏈接?多個innerHTML函數

在這個問題中可以使用變量嗎?

回答

1

您已經通過這個內聯函數將html元素傳遞給了函數,我認爲這樣可以很好地工作。現在

onclick="changeHistory(this); 

如果改變這樣的功能,你可以使用你剛剛通過獲得實際的URL,這是一個HTML元素的「href'屬性的HTML元素。

<script language="JavaScript"> 
function changeIframe(htmlElement) { 
    document.getElementById('maincontent').innerHTML = "<iframe src='" + htmlElement.href + "' width='100%' height='100%' scrolling='auto'></iframe>"; 
} 
</script> 


<li><a title="History" href="history.html" onclick="changeIframe(this); return false;">History</a></li> 
<li><a title="Figures" href="figures.html" onclick="changeIframe(this); return false;">Figures</a></li> 

玩得開心!

+0

謝謝!有效! – AimanB

+0

嘿,我有點困惑,我不善於js所以你可以告訴我這是'maincontent'在這段代碼,如果它的功能,那麼我們爲什麼使用它? –

+0

@MBTheDeveloper不完全是你的意思,但maincontent是id ='maincontent'的html元素(div或其他)。 –

0

是的,它看起來是正確的,你可以做這樣的事情,這將通過鏈接到iframe的src的「href」。

function changeFrames(which) { 

document.getElementById('maincontent').innerHTML="<iframe src='"+which.href+"' width='100%' height='100%' scrolling='auto'></iframe>"; 
} 
+0

它工作感謝很多 – AimanB

+0

嘿,我有點困惑我不擅長於js所以你可以告訴我這是代碼中的'maincontent',如果它的功能那麼我們爲什麼使用它? –

+1

maincontent是元素上的一個ID,這是iframe在其中的ID,例如'

' – david