onpropertychange for a textbox in Firefox?

后端 未结 4 1252
借酒劲吻你
借酒劲吻你 2021-01-03 09:47

How to handle the onpropertychange for a textbox in Firefox using JavaScript?

Below is an example:

var headerBGColorTextBox = document.g         


        
相关标签:
4条回答
  • 2021-01-03 10:46

    The following code works:

    var foo = '<%= tbHeaderBGColor.ClientID %>';
    
    function changetext() 
      {
      alert('function called');
      if (event.propertyName == 'style.backgroundColor' && event.srcElement.pluggedElement != null)
        alert(event.propertyName);
    
      event.srcElement.pluggedElement.style.backgroundColor = event.srcElement.style.backgroundColor;
      }
    
    if (!!document.addEventListener)
      {
      document.getElementById(foo).addEventListener("DOMAttrModified", changetext, false);
      }
    else
      {
      document.getElementById(foo).addBehavior("foo.htc");
      document.getElementById(foo).attachEvent("onpropertychange", changetext);
      }
    

    DOM Mutation Events

    0 讨论(0)
  • 2021-01-03 10:47

    There are two ways to mimic the onpropertychange event, Mutation events as mentioned above that should work equally across modern browsers and the "object.watch" non-standard method that will provide support for old versions of FF < 3.

    See documentation on MDC.

    Object.watch

    Mutation events

    0 讨论(0)
  • 2021-01-03 10:49

    It appears as if the onpropertychange event is IE Specific: http://www.aptana.com/reference/html/api/HTML.event.onpropertychange.html.

    However, with that said, Firefox, at least 3.0.10 does support an event called "DOMAttrModified". The following is a snippet of how it works:

    document.body.addEventListener("DOMAttrModified", function () { console.log ("Args: %o", arguments); }, false);
    document.body.id = "Testing";
    

    Where console.log is the assuming the Firefox extension Firebug is installed.

    0 讨论(0)
  • 2021-01-03 10:50

    onpropertychange is non-standard. See http://msdn.microsoft.com/en-us/library/ms536956

    0 讨论(0)
提交回复
热议问题