使用 javascript 禁用 onclick 属性
Disabling onclick attribute with javascript
激活其中一个事件后,如何禁用另一个onclick事件。两个div 都设置为显示:无;在 CSS 中。这可能非常简单,但我是编程新手。
.HTML
<a id="leftbutton" href="#" onclick="showDiv(this.id); return false;">click me</a>
<a id="righttbutton" href="#"onclick="showDiv(this.id); return false;">click me</a>
爪哇语
function showDiv(id)
{
if(id == "leftbutton"){
document.getElementById('orangediv').style.display = 'block';
}else{
document.getElementById('greendiv').style.display = 'block';
}}
这应该可以解决问题:
function showDiv(id)
{
if(id == "leftbutton"){
document.getElementById('orangediv').style.display = 'block';
document.getElementById('righttbutton').onclick = null;
}else{
document.getElementById('greendiv').style.display = 'block';
document.getElementById('leftbutton').onclick = null;
}}
例如:
function showDiv(id){
if (id == "leftbutton"){
document.getElementById('orangediv').style.display = 'block';
document.getElementById('rightbutton').onclick = "#";
}else{
document.getElementById('greendiv').style.display = 'block';
document.getElementById('leftbutton').onclick = "#";
}}
大致如下:
function showDiv(id){
var o = document.getElementById('orangediv');
var g = document.getElementById('greendiv');
if (id == "leftbutton"){
o.style.display = 'block';
}else{
g.style.display = 'block';
}
o.writeAttribute('onclick','');
g.writeAttribute('onclick','');
}
只需将另一个元素的 onclick 属性设置为 null;
if (id == "leftbutton"){
document.getElementById('orangediv').style.display = 'block';
document.getElementById('righttbutton').onclick = null;
}
else{
document.getElementById('greendiv').style.display = 'block';
document.getElementById('leftbutton').onclick = null;
}
}
function showDiv(id) {
if ( showDiv.executed ) {
return false;
}
if ( id === "leftbutton" ) {
document.getElementById('orangediv').style.display = 'block';
} else {
document.getElementById('greendiv').style.display = 'block';
}
showDiv.executed = true;
}
showDiv.executed = false;
这样做,您始终可以通过简单地将showDiv.executed
设置为 false
来重新启用显示。
您可以测试是否显示其他元素:
function showDiv(id)
{
if (id == "leftbutton" && (document.getElementById('greendiv').style.display == 'none'))
{
document.getElementById('orangediv').style.display = 'block';
}
else if(id == "rightbutton" && (document.getElementById('orangediv').style.display == 'none'))
{
document.getElementById('greendiv').style.display = 'block';
}
}
您可以将 href 属性设置为div 的 id,单击后应该可见。 showDiv
函数可以将整个元素作为参数获取,然后您也可以访问它的属性。第二个参数可以是你应该隐藏的元素的 id,
<a id="leftbutton" href="orangediv" onclick="showDiv(this,'rightbutton');return false">click me</a>
<a id="righttbutton" href="greendiv"onclick="showDiv(this,'leftbutton');return false">click me</a>
在 js 中:
var showDiv =function(el, toHide){
document.getElementById( el.href ).style.display = 'block';
document.getElementById( toHide ).style.display = 'none';
el.onclick = null; //remove onclick declaration from this anchor.
}
相关文章:
- 如何使用jquery迭代具有相同属性的html元素并查找onclick事件
- 如何通过它瞄准javascript元素's的onclick属性
- 作为onclick确认的一部分,Razor中的字符串属性
- SCRIPT5007:属性onclick=;JavaScript:functionName('name'
- 如何在循环中设置onclick属性
- 未捕获的类型错误:无法设置属性'onclick'为null.已尝试window.onload
- 具有多个功能的Onclick属性
- 使用 javascript 禁用 onclick 属性
- jQuery设置属性onclick所有元素,而不是使用内联JS
- 如何解析包含返回函数的属性onclick.javascript
- 如何通过属性“onclick”将jQuery函数.one()应用于元素
- 未捕获的类型错误:不能设置属性'onclick'零
- 类型错误:不能设置属性'onclick'零
- 未捕获的类型错误:不能设置属性'onclick'null的onclick不起作用
- 用Javascript设置选中的属性onClick
- 替换href属性onclick
- 获取包含属性onclick的image,然后隐藏img
- JavaScript 错误 msg : 未捕获的类型错误: 无法设置 null 的属性 'onclick'
- 未捕获类型错误:不能设置属性'onClick'的定义
- 未捕获的类型错误:不能设置属性'onclick'如果为null,则输入type="img&qu