日期:2014-05-16  浏览次数:20308 次

JS中如何得到触发事件的属性?

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script src="../EaseUI/Cks/jquery.js" type="text/javascript"></script>
    <script type="text/javascript" language="javascript">
        function chang() {
            var evt = event || window.event;
            alert(evt.propertyName);
        }

        function addCssSty() {
            $("#input_a").css("background-color", "#F0F0F0").css("border", "0");
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <input type="text" onpropertychange="chang(event);" id="input_a" />
    <input type="button" onclick="addCssSty();" value="改变样式" />
    </div>
    </form>
</body>
</html>

 

当我们在输入框输入字符的时候,触发事件onpropertychange调用chang()方法。

当我们在用JS改变控件属性的值时,也会触发事件onpropertychange调用chang()方法。

有时候就存在一个矛盾,我们只想在value改变是触发,其它属性改变时不触发,就需要捕获事件源进行判断,上面代码很容易理解。