我有以下内容.
<a href="#" onclick="hello()">click me</a>
Run Code Online (Sandbox Code Playgroud)
我有一个Javascript文件
$(document).ready(function() {
function hello() {
alert('hi');
}
});
Run Code Online (Sandbox Code Playgroud)
但是当我点击"点击我"时,警报没有被触发.它说"你好"没有定义.我删除document.ready,它的工作原理.
这是因为在整个文档准备好之前没有定义"hello",但是当渲染上面的"anchor"标记时,它找不到该函数?
有什么方法可以让这个工作吗?
Aza*_*ade 19
您还可以在Anchor Tag中使用HREF属性和javascript: keyword来调用JavaScript函数:
<a href="javascript:hello()">click me</a>
Run Code Online (Sandbox Code Playgroud)
jfr*_*d00 17
您的hello()函数声明不在全局范围内,因此来自尝试在全局范围内调用它的HTML的调用无法找到它.您可以通过将hello()函数移动到全局范围来修复它:
function hello() {
alert('hi');
}
$(document).ready(function() {
});
Run Code Online (Sandbox Code Playgroud)
或者在全球范围内宣布:
$(document).ready(function() {
window.hello = function() {
alert('hi');
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
82370 次 |
| 最近记录: |