onFocus无法在Chrome,Firefox,Safari中使用

时间:2013-08-12 06:09:32

标签: javascript

我有一个问题......我在onFocus事件下调用了一个函数,并且该函数在onFocus事件下无法正常工作,但是当我将该函数放在onMouseOver下时,它工作得很好....为什么不呢在onFocus事件下运行函数时??

html代码位于::

之下
<a href="#" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image4','','./Images/Search1.gif',1);" onfocus="commonSearchValidation('company','companyname','branchcode','isactive'); chkSpecial('company'); chkSpecial('branchcode');" onclick="clickSearch('company','branchcode','companyNameOpr','companyname','isactive');" >
                <img src="Images/Search.gif"  alt="Search"     name="Image4" width="73" height="21" border="0" id="Image4" /></a> 

我正在调用的函数如下:

function commonSearchValidation()
{   
    var counter=arguments.length;   

    var resflag = false;        
    for(var i=0 ; i < counter ; i++)
    {
        var fvalue = document.getElementById(arguments[i]).value;
        if(fvalue.trim().length!=0)
        {           
            resflag = true;
        }                   
    }
    if(resflag)
    {   
        return resflag;
    }
    else
    {
        alert(Enteronefield);
        document.getElementById(arguments[0]).focus();
        return resflag;
    }
}

1 个答案:

答案 0 :(得分:0)

因为你误解了焦点意味着什么。它与onmouse结束不同。

<a href="#" onfocus="myFunction(this)">onfocus</a>
<br>
<br>
<a href="#" onmouseover="myFunction(this)">onmouseover</a>

和js代码

 function myFunction(x)
    {
    alert("This is "+x.text);
    document.getElementById("a2").focus();   
    }

这是工作[JSfiddle DEMO][1]。了解差异。