1. #1
    Sencha User
    Join Date
    Jan 2012
    Posts
    5
    Vote Rating
    0
    orangehiyo is on a distinguished road

      0  

    Default IE8でのフリーズについて

    IE8でのフリーズについて


    Ext3.0で開発をしています。
    現在、IE8・FireFox・Chrome等のブラウザを使用し
    検証をしながら開発をしているのですが

    IE8でのみ、ブラウザのフリーズが起こります。
    フリーズが起こるタイミングとしては、
    ・ボタンを押したタイミング
    ・グリッドのセルをクリックしたタイミング
    ・パネル上をクリックしたタイミング
    等々・・・。

    必ず、マウスでどこかしらをクリックしたタイミングで
    フリーズが発生します。
    ※ただし、いつも同じ条件で発生するわけではありません。
    同じ操作を繰り返しても、フリーズする場合とフリーズしない場合があります。

    こういった経験のある方
    または
    情報をお持ちの方がいましたら

    ご教授いただけたらと思います。

    よろしくお願いいたします。


    Code:
        var viewport = new Ext.Viewport({
            layout: 'border',
            items: [
                //上部
                new Ext.BoxComponent({
                    region: 'north',
                    id:'north-panel',
                    height: 70, // give north and south regions a height
                    autoEl: {
                        tag: 'div',
                        html:TopTitle
                    }
                }),
                //左部
                {
                    region:'west',
                    id:'west-panel',
                    title: "メニュー",
                    contentEl: 'Menu',
                    autoScroll: true,
                    width:200,
                    split: true,
                    minSize:100,
                    maxSize:400,
                    collapsible:true
                },
                //右部
                {
                    region:'east',
                    id:'east-panel',
                    title: "検索",
                    contentEl: 'Search',
                    autoScroll: true,
                    width:400,
                    split: true,
                    minSize:100,
                    maxSize:600,
    //                collapseMode:'mini',
                    collapsed:true,
                    collapsible:true
                },
                //中央
                new Ext.Panel({
                    region: 'center',
                    id: 'center-panel',
                    enableTabScroll: true,
                    deferredRender: false,
                    activeItem: firstPanel,
                    listeners: {
                        bodyresize: function( w, h ) {
                            Ext.getCmp( this.getLayout().activeItem.id ).fireEvent( "resizePanel", this );
                        }
                    },
                    layout: 'card',
                    items: [{
                        id: 'menu-test0',
                        listeners: {
                            ・・・
                        }
                        contentEl: 'test0',
                        title: 'test0',
                        autoScroll: true
                    } , {
                        id: 'menu-test1',
                        listeners: {
                            ・・・
                        }
                        contentEl: 'test1',
                        title: 'test1',
                        autoScroll: true
                    } , {
                        ・・・
                    } , {
                        id: 'menu-test30',
                        listeners: {
                            ・・・
                        }
                        contentEl: 'test30',
                        title: 'test30',
                        autoScroll: true
                    }]
                })
            ]
        });
    ※westにはツリーパネルを設置。
    ※ツリーパネル上の項目をクリックしたら、centerのカードレイアウト上のitemが表示されるようになっています。

  2. #2
    Sencha User mashiki's Avatar
    Join Date
    Oct 2007
    Location
    Japan
    Posts
    139
    Vote Rating
    0
    mashiki is on a distinguished road

      0  

    Default


    表題の件、3.4.0でも再現するか確認してみた方がよいかと。
    3.0は3年前の製品なのでレスがつきにくいかと思います。

  3. #3
    Sencha User
    Join Date
    Jan 2012
    Posts
    5
    Vote Rating
    0
    orangehiyo is on a distinguished road

      0  

    Default


    Quote Originally Posted by mashiki View Post
    表題の件、3.4.0でも再現するか確認してみた方がよいかと。
    3.0は3年前の製品なのでレスがつきにくいかと思います。
    申し訳ありません。
    こちらの記述ミスです。
    使用しているバージョンは3.3.1です。
    これが約1年前くらいのだったと思います。

  4. #4
    Sencha User
    Join Date
    Mar 2010
    Posts
    34
    Vote Rating
    0
    shobuno is on a distinguished road

      0  

    Default


    まったく見当違いかもしれませんが…
    クリックする間隔の問題じゃないでしょうか…?


    有名な話ではありますが…
    IE8より前のIE(8を含む)は、他の主要ブラウザよりもJavaScript の処理がものすごく遅いです。
    そのため、見た目上は処理が終了しているが、内部的な処理がまだ終わってないのではないでしょうか。

    内部処理が終了していない状態で、さらにクリックするから処理し切れてないのでは?


    http://memorva.jp/internet/pc/browser_benchmark.php
    http://memorva.jp/internet/pc/browse...9_firefox4.php


    もしそうなら、処理の順番や、処理中はマスク掛けるなど工夫する必要がありますが…
    難しそうですね。


    Last edited by shobuno; 19 Jan 2012 at 8:21 PM. Reason: 内容の追記

  5. #5
    Sencha User
    Join Date
    Jan 2012
    Posts
    5
    Vote Rating
    0
    orangehiyo is on a distinguished road

      0  

    Default


    確認が遅くなり申し訳ありません。
    返信ありがとうございます。
    Quote Originally Posted by shobuno View Post
    有名な話ではありますが…
    IE8より前のIE(8を含む)は、他の主要ブラウザよりもJavaScript の処理がものすごく遅いです。
    そのため、見た目上は処理が終了しているが、内部的な処理がまだ終わってないのではないでしょうか。
    調査不足でした・・・IE8以前のものはJavaScriptの処理が遅いのは知らなかったです。
    実感として、遅いとは感じていたのですが・・・。

    もしかしたらIE9で起こらない(もしくは起こりにくい)のであれば、それも一つの要因かもしれないので
    確認してみます。
    確認後、また報告させていただきます。

    各ページの表示が終わるまで、
    ストアのロード中等の処理の間はマスクしているのですが・・・。
    まだ裏で動いているのかもしれません。
    こちらも含めて確認してみます。

    情報ありがとうございました。

  6. #6
    Sencha User
    Join Date
    Mar 2010
    Posts
    34
    Vote Rating
    0
    shobuno is on a distinguished road

      0  

    Default


    ご存知かもしれませんが…

    IE8から?開発者ツールでコンソールログや、例外が発生した箇所を見つけたり出来ますが、
    コンソールに何か情報は出ていないのでしょうか?
    (フリーズだから出てないのかな…)

    そのあたりの情報があれば、一緒に書くと良いと思います。
    (console.log() を仕込むとか…)


    IE上で、F12を押すと出るはずなので、使ってみては如何でしょう。
    多少は変わるかも?

    ご存知でしたら、すみません。

Thread Participants: 2