2014-09-12 367 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