【发布时间】:2011-08-03 06:51:23
【问题描述】:
我有一个非常简单的 YUI3 脚本,它可以改变网页的背景。以下是出处:
<html>
<head>
<title>YUI 3 events do not work!</title>
</head>
<body id="doc-body">
<div id="rgbvalues"> </div>
<script src="http://yui.yahooapis.com/3.3.0/build/yui/yui-min.js" charset="utf-8"></script>
<script type="text/javascript">
//use node and event modules
YUI().use("node", "event", function(Y){
var handleClick = function(e) {
var docBody = Y.one("#doc-body"); //equivalent to $(element) in prototype and jQuery(element)
var winHeight = docBody.get('winHeight');//get "viewport" height
var winWidth = docBody.get('winWidth');//get "viewport" width
var red = parseInt (e.pageX * (255/winWidth));
var green = parseInt(e.pageY * (255/winHeight));
var blue = parseInt (red*green*0.004);
var bgstyle = "rgb("+red+","+green+"," +blue+")";
console.log("setting background-color:"+bgstyle+" for #doc-body");
docBody.setStyle("background-color", bgstyle);//same as $(element).setStyle() from prototype and jQuery(element).css()
Y.one("#rgbvalues").set("innerHTML", bgstyle);//set innerHTML
};
Y.on("mousemove", handleClick, "#doc-body");
});
</script>
</body>
</html>
该脚本在 Firefox 5 或 Opera 中无法运行,但在 Chrome 中运行良好。 Firebug 控制台上也没有错误。即使我将事件从 mousemove 更改为 click 也不起作用。
【问题讨论】:
标签: javascript google-chrome firefox dom-events yui