Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在Kendo UI mobile中扩展移动视图?_Javascript_Kendo Ui_Prototype_Prototypal Inheritance_Kendo Mobile - Fatal编程技术网

Javascript 在Kendo UI mobile中扩展移动视图?

Javascript 在Kendo UI mobile中扩展移动视图?,javascript,kendo-ui,prototype,prototypal-inheritance,kendo-mobile,Javascript,Kendo Ui,Prototype,Prototypal Inheritance,Kendo Mobile,似乎不可能为移动设备扩展视图。我想这样做是因为我可以预定义一些选项和行为。我创建了一个,这给了我一个错误: 您的kendo mobile应用程序元素不包含数据角色=视图属性集的任何直接子元素。确保使用正确的容器实例化移动应用程序 JavaScript: kendo.mobile.ui.plugin(kendo.mobile.ui.View.extend({ init: function (element, options) { kendo.mobile.ui.View.f

似乎不可能为移动设备扩展视图。我想这样做是因为我可以预定义一些选项和行为。我创建了一个,这给了我一个错误:

您的kendo mobile应用程序元素不包含数据角色=视图属性集的任何直接子元素。确保使用正确的容器实例化移动应用程序

JavaScript:

kendo.mobile.ui.plugin(kendo.mobile.ui.View.extend({
    init: function (element, options) {
        kendo.mobile.ui.View.fn.init.call(this, element, options);
    },
    options: {
        name: 'ViewCustom'
    }
}));

$(function () {
    new kendo.mobile.Application(document.body);
});
HTML:

Kendo support只是说它不受支持——移动应用程序无法识别子体,也无法在启动时初始化它们。这对移动设备来说是一个巨大的扩展障碍,所以我一直在翻源代码,看看这是硬编码的,我认为改变将出现在ViewEngine中的某个地方,可能是在_hideViews中。我在中还看到一些硬编码的视图。所以我认为这将是一个巨大的黑客的源代码,使其工作


我的问题是,有没有一种方法可以在不创建新类的情况下扩展视图,例如使用prototype来扩展kendo.mobile.view?任何帮助、经验或见解都将不胜感激

不要依赖剑道来查找要显示的初始视图,该视图将专门搜索数据role=view,您可以通过编程告诉它初始视图:

new kendo.mobile.Application(document.body, {
    initial: "home"
});
然后单击“主页”按钮也会导航到第二个视图,以确保该视图也能正常工作

new kendo.mobile.Application(document.body, {
    initial: "home"
});