問題タブ [polyfills]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
internet-explorer-8 - Webshims Lib - IE8 のメディア クエリ
Webshims Lib を使用して、メディア クエリを IE8 で動作させようとしています。セットアップ手順に従い、デフォルト (すべて) のポリフィルをロードしましたが、機能していないようです。
html5shiv を明示的に含める必要はありますか? Webshims Lib が対応してくれると思っていたのですが?
乾杯。
jquery - IE7 & 8 のホワイト ページ - Webshims / Polyfill の問題
Twitter Bootstrap と Wordpress を使用して小さな Web プロジェクトを完成させましたが、残念ながら Internet Explorer にはいくつか問題があります。Opera、Safari、および Chrome では、エラーなしでページが表示されます。
IE10 と IE9 ではすべて問題ないように見えますが、IE8 と IE7 では白いページしか表示されません。その「ホワイト スクリーン オブ デス」(WSOD) の解決策を見つけるために Google 検索を既に実行しましたが、がっかりしました。
また、ページ自体のデバッグも行いました。そうすれば、HTML5 フォームのポリフィルが問題を引き起こしていることがわかりました。そのためにWebshimsを使用しています。ページには IE6+ との互換性が記載されていますが、ご覧のとおり、そうではありません。これは奇妙です。
そこで、FireBug コンソールを調べて、JavaScript エラーがないかどうかを確認しました。エラーはありませんでしたが、問題を引き起こすスクリプトに警告がありました。
Call webshims.polyfill before DOM-Ready or set waitReady to false.
そこで、ページの下部にスクリプトをロードするため、ドキュメントを調べてに設定waitReady
しました。false
その結果、警告はなくなりましたが、IE8 と IE7 ではまだ白いページしか表示されません! テストとして、スクリプトへの呼び出しを再度削除しました。ページは IE8 & 7 で動作します。呼び出しを再度追加するとすぐに、白いページが表示されます。
何時間も戸惑った後、1 つのことが頭に浮かびました。デフォルトでは、Wordpress の jQuery は非競合モードで実行され$("#something)
ますjQuery("#something")
。これが何らかの問題を引き起こす可能性があるというのが私の考えだったので、非競合モードを無効にしました。まだ: 何もない、白いページ。
何が問題を引き起こしているのか、私にはこれ以上の考えがありません。解決策や解決策のアイデアはありますか?
ご意見をお待ちしております。
javascript - html5フォームの検証を最もよくシミュレートするjavascriptフォールバックは何ですか
html5 でフォーム クライアント側を検証するアプリを作成しました。古いブラウザーでこの動作を最もよくエミュレートする javascript 実装を探しています。
重要な資質は次のとおりです。
- できるだけ似た動作。
- css/html の変更をできるだけ少なくする
- 組み込みのフィールド検証以外の機能は可能な限り少なくする
javascript - modernizr のように、Flexbox (2012、css3) を有効にする JavaScript コード (ポリフィル) はありますか?
modernizr のように (実際にはそうではありません)、「古いブラウザー」(ポリフィル) のフレックスボックスを有効にする JavaScript ライブラリを探しています。
はい、これは本当に新しい機能であることは知っています (事実、「存在しない」というのは有効な答えです)。しかし、私はこのようなことを望んでいます。私は常に水平方向と垂直方向のセンタリングに苦労しています。作品。
私はこのフレックスボックスを意味します: http://weblog.bocoup.com/dive-into-flexbox/ (最新)
html - Modernizr-ポリフィルをロードする正しい方法/カスタム検出を使用する
Webページでいくつかの新しいHTML5フォーム属性と入力タイプを使用したいと思います。一部のブラウザはすでにそれらをサポートしていますが、他のブラウザはサポートしておらず、決してサポートしません。それが私がModernizrを使いたい理由です-そしてそれが私の問題の始まりでした。
私の理解では、Modernizrだけがポリフィルではなく、ブラウザーが新しいHTML5/CSS3のものに対応しているかどうかをテストできるスクリプトです。必要に応じて、これらの機能を「エミュレート」するポリフィルをロードして、サポートされていない/古いブラウザで使用できるようにすることができます。これは正しいと思いますか?
テスト/ロードについて:Modernizrでポリフィルをロードする正しいまたは最良の方法は何ですか?
ドキュメントで私はこれを見つけました:
しかし、いくつかのページもこのようにそれを行います:
また、これらの機能がどのように検出されているかを実際に知るにはどうすればよいですか?Modernizr.geolocation
すべての機能検出に確かに存在するようなものはありますか?
Modernizr GitHubリポジトリには、ユーザーが提供した機能の検出も多数あります。これらを自分のバージョンのModernizrに実装するにはどうすればよいですか?それとも、ビルダーを使用するのが最善ですか?
Safariでは、HTML5フォームの検証は機能しますが、エラーメッセージを表示するためのUIはありません。基本的に、この機能は半分しか実装されていません。すでにここで述べたように、ModernizrがSafariで誤検知を出すのはそのためです:https ://github.com/Modernizr/Modernizr/issues/266 どうやら誰かがそのようなカスタムテストでこれを修正したようですが、私はまだ使用方法を理解していませんそれ。1
css - CSSグリッドテンプレートレイアウトのJS実装に対するメディアクエリのサポート
W3Cには、HTMLページの高度なレイアウトメカニズムを導入するための草案があります。このドラフトの基本を最新のブラウザでサポートする2つのJavaScript実装を見つけました。
これらのいずれか、または別の実装に、メディアクエリを介したレイアウトの調整のサポートが含まれているかどうかを誰かが知っていますか?
jquery-mobile - jQuery Mobile Android 2.x スライド遷移のサポート
jQuery Mobile は、Android 2.3 以前のスライドなどの 3D トランジションをサポートしていません。それを機能させるためのポリフィル/ウィジェット/プラグイン/方法はありますか?
javascript - ノックアウトでポリフィルを使用する信頼できるクロスブラウザの方法はありますか?
私たちのサイトはほぼ完全にノックアウト状態に陥っており、IE7 (IE6 ではなく) に戻る Internet Explorer を含むすべての主要なブラウザーをサポートする必要があります。
Chrome は、私たちが実際に気にかけているほとんどすべての HTML 5 機能を既にサポートしており、Modernizr は CSS ハックをチャンピオンのように処理します。しかし、ポリフィルに頼らなければならない場合もあります。2 つの注目すべき例は、placeholder
属性と、最近では<details>
要素です。
ほとんどのポリフィルは jQuery プラグインであるか、jQuery プラグインに依存しており、理論的には優れています。残念ながら、それらは動的にロードされるコンテンツを処理するのにも効果的でない傾向があります。これは、ノックアウト (または実際には任意のテンプレート エンジン) を使用する場合に大量に発生します。問題をさらに複雑にしているのは、ノックアウトを真の MVVM として使用していることです。そのため、プラグインをリロードするために多数の JS ハックを利用する適切な場所がありません (これは、私たちのアーキテクチャに関する限り、おそらく良いことですが、これには不満があります。フロント)。
DOMNodeInserted
私たちは、Firefox と IE9 のイベント (非推奨、私は知っています) を使用して、ある程度信頼性の高い実装を考え出すことができました。残念ながら、IE8 では機能しませんでした。従来の IE ではサポートされておらず、これらのブラウザーで複製することはほぼ不可能に思われるからです。onreadystatechange
最初は有望に見えましたが、イベントが発生するのが早すぎる傾向がありreadyState
(明示的にチェックされていても)、いわばポリフィルがターゲットを逃してしまいます。
IE7/IE8 で実際に確実に機能する唯一のオプションは、50 ミリ秒ごとにポリフィルを再実行する繰り返しタイムアウトを使用することでした。残念なことに、これは常に CPU 全体を消費し、それを 100 ミリ秒まで上げると、UI であまりにも顕著な遅延が発生するため、本番環境での使用にはあまり適していません。
では、少なくとも IE7 までのすべての主要なブラウザーで動作する、従来のポリフィル手法を動的コンテンツやノックアウト js のようなテンプレート エンジンと組み合わせる信頼できる方法はありますか?
(FWIW、最終的にノックアウトのafterRender
バインディングを使用して回避策を管理しましたが、そのようなものは「ポリフィル」から「ポリ」を取り除きます。一度書いたら忘れることができる何かを望んでいます。)
javascript - ie7、ie8、ie9に最適なプレースホルダーポリフィルスクリプト
IE7、8、9でプレースホルダーサポートを提供するために使用することをお勧めするプレースホルダーポリフィルスクリプトはどれですか。
私はモダナイザーチームから次のリストを見ましたが、ここの誰かが彼らと一緒にマイレージを持っているのか、リストにない他の人がいるのか、そして彼らが最高だと思うのは何か疑問に思っていました
私の評価基準は次のとおりです。
- ファイルサイズ
- モダナイザー/イェプノペなしで作業する能力
- 速度(クレイジーなループなし)
- 安定性、野生で使用されている量はどれくらいですか?
- ネイティブのプレースホルダー機能を検出し、わざわざ実行しない
プレースホルダーサポートの入力のonclickイベントで行などを書いていた日のことを覚えています-笑、しかし正直なところ、私はこれらの恐ろしいブラウザーをサポートすることを気にすることはできません(これを見てください)。少なくともIE10はついに正しい方向に進んでいます。
ありがとうございました...