如何停止dojo滚动以在焦点上形成小部件?

时间:2013-04-21 17:25:43

标签: javascript dojo dijit.form

所有表单小部件都从dijit.form._FormWidgetMixin扩展,当它获得焦点时会将窗口滚动到窗口小部件。

我个人发现这种行为使大多数小部件无法使用。我怎么能阻止它?

1 个答案:

答案 0 :(得分:2)

Dojo允许您使用dojo/_base/lang::extend扩展基本组件。只需确保在加载dijit/form/_FormWidgetMixin

的任何require调用之前需要此模块
// Dojo 1.7+ (AMD)
define([
    "dojo/_base/lang",
    "dijit/form/_FormWidgetMixin"
], function(lang, _FormWidget){
    lang.extend(_FormWidget, {
        scrollOnFocus:false
    });
});

对于pre-AMD dojo,这是相同的:

// Dojo < 1.7
dojo.require("dijit.form._FormWidget");
dojo.extend(dijit.form._FormWidget, {
    scrollOnFocus:false
});