0

jquery-1.10.2.min.js lib を使用して次のクライアント側 JavaScript を使用している MVC4 で開発されたビューを使用して、ユーザーのブラウザーが特定のことを実行できるかどうかを確認して、http :/ /www.plupload.com/ .

IE 10.0.9200.1671 を実行していますが、VS を介して MS Cassini サーバーを実行しているローカルの Windows 7 PC でこのコードを実行すると、customRuntime が期待どおりの「html4」ではありません。ただし、同じブラウザーで他のタブを使用し、MS IIS8 を実行しているテストおよび QA Windows 2012 サーバーでこのコードの同じバージョンを指定すると、customRuntime が「html4」であることが示されます。

    $(document).ready(function () {

        var customRuntime = 'gears,html5,flash,silverlight,html4';

        //Check to see if browser is IE and version is 8 and less, if so set the runtime to Html4 for plupload.
        if (!$.support.opacity) {
            /* IE 6 to 8 */
            customRuntime = 'html4';
        }

        $('#pickfiles').click(function () {
            $('#help2,#help3,#help4').hide();
            $('#help1').show();
            $('.file.failed').remove();
        });

        uploader = new plupload.Uploader({
            chunk_size: '1500kb',
            multipart: true,
            runtimes: customRuntime, //'gears,html5,flash,silverlight,html4',
            browse_button: 'pickfiles',
            container: 'ulcontrol',
            max_file_size: '500mb',
            url: 'ProcessUpload',
            //  resize: { width: 320, height: 240, quality: 90 },
            flash_swf_url: '/assets/plupload/plupload.flash.swf',
            silverlight_xap_url: '/assets/plupload/plupload.silverlight.xap',
            filters: [
                { title: "Data Files", extensions: "zip,csv" }
            ],
            multiple_queues: false
        });

        uploader.bind('Init', function (up, params) {
            $('#runtime').html(params.runtime + " runtime");
        });

        uploader.init();
        ...

再び同じブラウザで、ローカル サーバーを指すと「html5 ランタイム」が表示され、テストと QA を指すと「html4 ランタイム」が表示されます。サーバー上の不足しているファイル/ライブラリを探しましたが、コードは完全にデプロイされているようです。アップロードはすべての環境で正常に動作しますが、期待していた HTML5 機能の一部が機能せず、IE 10 のレポートがサイトごとに異なるのは奇妙です。

私の主な質問は、このクライアント側のコードが同じブラウザーでレンダリングされたときにどのように異なる動作をするかということです。

前もって感謝します。

4

1 に答える 1