为什么这个隐藏显示功能不起作用
Why is this hide show function not working?
我是一个JavaScript初学者,但我已经在其他地方实现了这段代码并且它有效。我是否忽略了一些明显的事情?
https://jsfiddle.net/x3oj787q/1/
.html:
<a href="javascript:toggle_visibility('div');">help</a>
<div id="div"style="display: none;">
help
</div>
.js:
function toggle_visibility(id) {
var e = document.getElementById(id);
if(e.style.display == 'block')
e.style.display = 'none';
else
e.style.display = 'block';
}
你的代码是完美的,但你是在页面的onLoad中创建你的函数,这意味着当你从一个href标签调用它时,它超出了范围。 如果你将你的小提琴与@dtsq进行比较,你会注意到,如果你点击 JAVASCRIPT 按钮,荷载类型是你的onLoad
,No wrap - in <body>
是他的。
No wrap - in <body>
告诉浏览器不要包装你的js代码并将其放在正文中。
请注意,No wrap - in <head>
也可以正常工作。
onLoad
告诉浏览器包装代码,以便它将在 onLoad 窗口事件中运行。 你说你在其他地方实现了这段代码,它奏效了。 当您将此纯 JavaScript 代码添加到头部或身体部分时,它可以正常工作。 但我敢打赌,您正在尝试将此代码放在 JQuery 块或其他 onLoad 区域中,这会导致由于范围而导致问题。
相关文章:
- 使用复杂数组时Jquery自动完成功能不起作用
- 切换功能不起作用
- 为什么不是'我的修剪功能不起作用
- Angular UI Select2指令搜索功能不起作用
- AngularJS 路由功能不起作用
- JavaScript更新功能不起作用
- JS表单验证功能不起作用
- 复选框树视图功能不起作用
- Web音频-AudioParam调度功能不起作用
- 复选框单击功能不起作用
- jQuery加载函数后,jQuery UI自动完成功能不起作用
- 按下空格键一次后,Jquery功能不起作用
- jquery ajax调用后,表分类器功能不起作用
- jquery对话框可拖动功能不起作用
- 我的数字检查器功能不起作用,为什么
- 隐藏/显示加载功能不起作用
- .slideToggle-on.click功能不起作用
- 验证功能不起作用
- 在我的项目中,添加、删除和编辑功能不起作用
- Onsubmit功能不起作用