有一个textarea,我想在这焦点在这个textarea中的时候屏蔽某个function,
就是使这个function失效,移出焦点后重新使其有效,请问该怎样实现???
1楼
在你的那个函数里通过 document.activeElement 得到当前网页聚焦的那个控件, 判断这个若是这个 textarea 则跳出不执行本函数
2楼
楼上正解,向meizz学习
3楼
to meizz(梅花雪)
我是用
document.activeElement.tagName.toLowerCase()!='textarea'
来判断textarea控件的,可是页面上有多个textarea,
我只想在其中一个textarea中屏蔽此function,请问该如何做???
更麻烦的是另外有个hidden的textarea,除了属性是readonly外,其他属性和此textarea完全相同,请问又该如何实现???
4楼
使用onfocus,onblur事件作函数开关
<body>
<script language="JavaScript">
function disablefun()
{
window.myfun = null;
}
function enablefun()
{
window.myfun = function()
{
showid.innerHTML += "i'm active<br>";
};
}
function myfun()
{
showid.innerHTML += "i'm active<br>";
}
</script>
<form method="get" name=search id=search target="_blank">
每次键入内容均触发myfun函数<br>
<textarea name="txa" rows="5" cols="20" onkeydown="if(myfun)myfun()"></textarea>
<hr>
<br>
每次按键均不触发myfun函数(聚焦时失效,失焦时有效)<br>
<textarea name="txa" rows="5" cols="20" onfocus="disablefun()" onblur="enablefun()" onkeydown="if(myfun)myfun()"></textarea>
</form>
<div id=showid>
</div>
</body>
textarea
js
JavaScript