如果元素使用dojo / _base / fx animateProperty(),我正在尝试为透明度更改设置动画。但是我在控制台上遇到错误* * em> Uncaught TypeError:Object#没有方法'animateProperty'* 。无法弄清楚代码有什么问题。这是我为此创造的小提琴。
发布代码段:
require(["dojo/fx", "dojox/fx/scroll", "dojo/dom", "dojo/dom-style", "dojo/on", "dojo/domReady!","dojo/window","dojo/dom-geometry","dojo/dom-style", "dojo/_base/fx"],
function(coreFx, easing, dom, style, on, win, domGeometry, fx){
on(dom.byId("contactFormButton1"), "click", function(){
//dojo.byId('screen1').style.opacity = '0.5';
fx.animateProperty({
node: dom.byId("screen1"), duration: 5000,
properties: {
opacity: { start: '1', end: '0.5' }
}
}).play();
style.set("screen2", "display", "block");
dojo.byId('contactFormButton1').style.display = 'none';
dojox.fx.smoothScroll({
node: dojo.byId('screen2'),
win: window
}).play();
});
});
答案 0 :(得分:0)
require([
"dojo/fx", "dojox/fx/scroll",
"dojo/dom", "dojo/dom-style", "dojo/on", "dojo/domReady!",
"dojo/window", "dojo/dom-geometry", "dojo/_base/fx"
], function (coreFx, easing, dom, style, on, ready, win, domGeometry, fx) {
on(dom.byId("contactFormButton1"), "click", function () {
//dojo.byId('screen1').style.opacity = '0.5';
fx.animateProperty({
node: dom.byId("screen1"),
duration: 5000,
properties: {
opacity: {
start: '1',
end: '0.5'
}
}
}).play();
dojo.byId('contactFormButton1').style.display = 'none';
});
});
问题是require
和函数参数之间不匹配。您忘记了ready
作为参数。