5

私の sencha touch アプリケーションはすべてのブラウザーで正常に動作していますが、URL を iPad のホーム画面に保存すると. ロードされず、空白の画面のみが表示されます。JS エラーは発生せず、デバッグ時にログに何も記録されません。アプリのサンプルは次のとおりです。

script type="text/javascript">
    var rootPanel;
    if (navigator.userAgent.match(/iPad/i)) {
        viewport = document.querySelector("meta[name=viewport]");
        viewport.setAttribute('content', 'width=980');
    }
    Ext.application({
        launch: function () {



            var contactForm = Ext.create('Ext.form.FormPanel', {
                standardSubmit: true,
                fullscreen: true,
                items: [{
                    xtype: 'titlebar',
                    title: 'My App',
                    docked: 'top'
                }, {
                    xtype: 'fieldset',
                    items: [{
                        xtype: 'textfield',
                        name: 'LoginName',
                        label: 'Login Name:'
                    }, {
                        xtype: 'passwordfield',
                        name: 'Password',
                        label: 'Password:'
                    },
                    {
                        xtype: 'hiddenfield',
                        name: 'ReturnUrl',
                        value: '/returnUser.html'
                    }] // items
                }, {
                    xtype: 'toolbar',
                    layout: {
                        pack: 'center'
                    }, // layout
                    ui: 'plain',
                    items: [{
                        xtype: 'button',
                        text: 'Reset',
                        ui: 'decline',
                        handler: function (btn, evt) {
                            Ext.Msg.confirm('', 'Are you sure you want to reset this form?', function (btn) {
                                if (btn === 'yes') {
                                    contactForm.setValues({
                                        LoginName: '',
                                        Password: ''
                                    }); // contactForm()
                                } // switch
                            }); // confirm()
                        }
                    }, {
                        xtype: 'button',
                        text: 'Submit',
                        ui: 'confirm',
                        handler: function (btn, evt) {
                            var values = contactForm.getValues();

                            contactForm.submit({
                                url: 'Login',
                                method: 'POST',
                                waitTitle: 'Connecting',
                                waitMsg: 'Sending data...',
                                success: function (form, result) {
                                    Ext.Msg.alert('Login succeeded!', result.response.reason);
                                },
                                failure: function (form, result) {
                                    Ext.Msg.alert('Login Failed!', result.response.reason);
                                }
                            });

                        } // handler
                    }] // items (toolbar)
                }] // items (formpanel)
            }); // create()
        } // launch
    }); // application()


    $(document).ready(function () {

    });

の起動方法にアラートを入れたのですExt.Applicationが表示されません。document.ready関数にアラートを入れると、表示されます。また、ホーム画面のアイコンから起動したときだけでなく、iPadブラウザーでも機能することに注意してください。

4

2 に答える 2

1

私はAndroidで同様の問題に直面しました。私の場合、問題はExt.Loaderが有効になっていないことが原因でした。あなたもそれを含めていないようです。Ext.applicationの前にこのスクリプトを含めて、機能するかどうかを確認してください

Ext.Loader.setConfig({
    enabled:true
});

Ext.application({...});
于 2013-02-28T10:09:32.023 に答える
0

私が使用していた sencha のバージョンは 2.1.0 だったようですが、最新 (2.1.1 Build Date 2013-02-05 12:25:50) に更新するとすぐに正常に動作します。

于 2013-03-01T17:57:51.043 に答える