2014-09-12 102 views
0

我做了一個超鏈接,看起來像一個按鈕,並將其設置爲onClick="function()",但是當我點擊它時,它將不會執行。如果可以使用的話,我將JS放在與HTML文件不同的文件中。onClick不執行功能

如何我聯繫這
<script src="script.js"></script>

超鏈接

<ul id='nav'> 
    <li> 
     <a onClick="playerNum()">Play</a> 
    </li> 
    <li> 
     <span style='float: right;'> 
     <a onClick="rules()">Rules</a></span> 
    </li> 
</ul> 

我的JavaScript

var playerNum = function() { 
    document.getElementById('log').innerHTML = 
     "<h2 style='font-family: calibri'> Choose single or multiplayer </h2>" + 
     "<br >" + 
     "<ul id='nav'>" + 
     " <li> <a onClick='singlePlay()'> Singleplayer </a> </li>" + 
     " <li> <a onClick='multiPlay()'> Multiplayer </a> </li>" + 
     "</ul> " 
}; 
+0

做你的JavaScript函數singlePlay()或多重()移動呢?如果他們這樣做,你將需要重新初始化它們。通過(或移動)javascript加載的Javascript通常不可執行。 – David 2014-09-12 21:06:49

+0

我把你的html字符串分開了,所以人們不必滾動不停地滾動 – ps2goat 2014-09-12 21:07:55

+0

你是否在加載函數中包裝了你的js代碼? – TheFrozenOne 2014-09-12 21:09:20

回答

2

這對我的作品。你有與id="log"

小提琴:http://jsfiddle.net/o7b83omw/1/

HTML:

<ul id='nav'> 
    <li> 
     <a onclick="playerNum()">Play</a> 
    </li> 
    <li> 
     <span style='float: right;'> 
     <a onclick="rules()">Rules</a></span> 
    </li> 
</ul> 
<div id='log'></div> 

的javascript:

var playerNum = function() { 
    document.getElementById('log').innerHTML = 
     "<h2 style='font-family: calibri'> Choose single or multiplayer </h2>" + 
     "<br >" + 
     "<ul id='nav'>" + 
     " <li> <a onClick='singlePlay()'> Singleplayer </a> </li>" + 
     " <li> <a onClick='multiPlay()'> Multiplayer </a> </li>" + 
     "</ul> "; 
}; 
+0

是的,我有一個id =「log」'的元素。 這裏是我的所有文件的小提琴http://jsfiddle.net/gateway12231/w8z4skyt/ – Gateway12231 2014-09-12 21:37:37

+0

你有你的代碼很多問題。我已經修正了一些,但是你的主要問題是** 1)**你的腳本需要加載''標籤,因爲元素需要腳本到位,** 2)**你在[當前]第93行錯過了大括號** 3)**變量賦值順序很重要,並且** 4)**添加了許多缺少的分號。我沒有看太多的代碼,但我的修改至少修復了4個錯誤。 http://jsfiddle.net/w8z4skyt/3/ – ps2goat 2014-09-12 22:23:04

+0

這可能不是你解釋給我的地方,但我對堆棧溢出和Web開發/編程也很新。你需要加載''標籤的腳本是什麼意思?你也可以解釋「變量賦值的順序」嗎?在jsfiddle中@ ps2goat – Gateway12231 2014-09-13 18:32:25