Opera 9.5 ã§ã¯ getter setter ã使ããããã«ãªãã¾ãã
㧠Safari 3 ã§ã使ããã試ãã¦ã¿ããã»ã»ã»
alert({ get x() { return 'ok' } }.x); // ok
ã¤ã使ããï¼
Firefox ã§ã
ããªãåãã getter setter ã使ãã
ã¨ããäºã¯ã»ã»ã»
IE 以å¤ã§ getter setter ã使ããã®ã¯ããããã ï¼ï¼ï¼
IE ã«ãããªãããããã£ãä»ã®ãã©ã¦ã¶ã§å®è£ ãããã¨ãã§ããããã«ãªãï¼ï¼
ãã¨ãã°ããããªæãï¼
// âæ¡ä»¶ä»ãã³ã³ãã¤ã« /*@cc_on @if (@_jscript) @else @*/ if (!('returnValue' in Event.prototype)) { Event.prototype.__defineSetter__('returnValue', function(returnValue) { if (!returnValue) { this.preventDefault(); } return returnValue; }); } if (!('cancelBubble' in Event.prototype)) { Event.prototype.__defineSetter__('cancelBubble', function(cancelBubble) { if (cancelBubble) { this.stopPropagation(); } return cancelBubble; }); } if (!('srcElement' in Event.prototype)) { Event.prototype.__defineGetter__('srcElement', function() { return this.target }); } if (!('clientX' in Event.prototype)) { Event.prototype.__defineGetter__('clientX', function() { return this.pageX - (document.documentElement.scrollLeft || document.body.scrollLeft); }); } if (!('clientY' in Event.prototype)) { Event.prototype.__defineGetter__('clientY', function() { return this.pageY - (document.documentElement.scrollTop || document.body.scrollTop); }); } /*@end @*/
ããã使ãã¨
document.onclick = function(event) { var event = event || window.event; alert(1); event.cancelBubble = true; // IE ã ããã使ããªãã£ãããããã£ï¼ï¼ï¼ } // cancelBubble ã«ãã£ã¦ã¤ãã³ãã®ãããªã³ã°ãæ¢ã¾ãã以ä¸ã¯å®è¡ãããªãã window.onclick = function(event) { var event = event || window.event; alert(2); };
ãæå¾ éãã«åä½ããã¤ãã³ãã®ãããªã³ã°ãæ¢ãããã¨ãã§ããã
ã¾ã¨ã
ããããã¯ã getter setter ã使ã£ãã¯ãã¹ãã©ã¦ã¶ãªå®è£ ãããããåºã¦ããã®ãããããªãã