問題タブ [jquery-3]
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.
javascript - ドキュメント準備完了関数内でロード時のウィンドウが確実にトリガーされない - jQuery v3.1.0
ページがすべての画像などで完全に読み込まれると、jQuery でフェードアウトする単純な css プリローダーを作成しました。
問題は、ウィンドウ ロード イベントがドキュメント準備完了関数内で確実にトリガーされないことです。ページがキャッシュされると動作するように見えますが、サイトが最初に読み込まれたときにトリガーされません。
回避策はありますか?
javascript - 関数がjQueryで完全に実行された後にコードを正しく実行する方法は?
ウィンドウが完全に読み込まれ、関数checkRetinaHeader()
が完全に実行されたら、サイトから完全に削除する必要があるフルスクリーン CSS プリローダーを使用しています。このサイトは jQuery v3.1.0 で実行されています。
コードはすべての主要なブラウザーで動作しますが、サイトがまだキャッシュされていない場合、IE11 以下では最初の読み込みで失敗します (エラー: スクリプト 5007: 未定義または null 参照のプロパティ 'style' を取得できません)。その場合、内部のコード.done(function() { ... }
は実行されず、CSS プリローダーがロードし続けます。ページをリロードすると、つまりサイトがキャッシュにある場合は機能します。
アドバイスをいただければ幸いです。
javascript - JQMIGRATE: イージング関数 "jQuery.easing.swing" は最初の引数のみを使用する必要があります
JQuery V1.9.1 を V3.0 にアップグレードし、「jquery migrate 3.0」を使用しています。コンソールに次の警告があります。
警告メッセージのソースを検索すると、次のコードが見つかりました。
このコードを書き直して、警告メッセージが表示されないようにするにはどうすればよいですか?
このリンクを見つけましたが、わかりません どうすれば修正できますか?
このコードにも同じ警告があります:
詳細については、2 番目のコードのコンソール トレースを参照してください。
jquery - jquery-3でビューポートサイズを取得するには?
$(window).height()
ブラウザのビューポート ウィンドウの高さを返すため$(window).width()
に使用され、ブラウザ ウィンドウの幅に使用されていました。
$(window).height()
は と同じ値$(document).height()
、つまりページ全体の高さを返すだけになりました。
jqueryでビューポートサイズを取得する適切な方法は何ですか?
google-chrome - バージョン 3.1.0 では、jQuery.offset が chrome で正しく機能しない
jquery.offset
クロムの SVG 要素に適用されると、常に 0/0 を返します。
$('#zeroPoint').offset()
Chrome (少なくともバージョン 40 ~ 52 (cur 安定版) & 53 dev) で呼び出すと、誤った位置が返されますがtop: 0, left: 0
、Firefox 48、IE 11 & Edge 13 では返されtop: 45.xx, left: 53.xx
ます。
それはなぜですか?
もう1つ:
メソッドoffset
はChromeのjQueryバージョン<= 2.2.4で問題なく機能していました:
jQuery v2.2.4を使用したJSFiddle
javascript - jQuery.when と jQuery.Deferred.resolveWith で .apply() を使用して配列に変換されるのはなぜですか?
jQuery 3.0.0 を使用すると、
への最初の呼び出しは、 にチェーンされたjQueryWhenApplyResolveRejectWith
解決済みの jQuery promise 値の配列を返す必要があります。ここで、 はオブジェクトの配列です。.then()
promises
this
obj
への 2 番目の呼び出しは、単一のオブジェクトに設定されたjQueryWhenApplyResolveRejectWith
を返す必要があります。Error
this
obj
単一のオブジェクトが に渡されたため、 の予期される結果はsuccess
singleにthis
設定されます。obj
deferred.resolveWith
期待される結果は返されませんが、javascript
at stacksnippets では、.bind()
または$.proxy()
at.then()
チェーンを使用して単一のオブジェクトを返すことができますpromises
。
質問:
this
に渡されたプレーン オブジェクトから配列に変換されるの はなぜですか.resolveWith()
。に渡された同じオブジェクトは、パターン.rejectWith()
を使用して単一のオブジェクトを返しますか?$.when.apply()
$.when.apply()
or.resolveWith()
、または両方を同じ手順で使用した場合の予想される動作は、解決された jQuery promise オブジェクトの数を乗算したthis
元を含む配列に設定されますか?this
javascript - $(function()) が複数回呼び出された場合の jQuery の関数 $(function()) の実行順序
このようなコード:</p>
上記のコードを実行すると、ページのアラートの順序は、アラート 1、アラート 2、アラート 3 の場合もあれば、アラート 1、アラート 3、アラート 2 の場合もあります。
jquery - JQuery を使用して JSON データを API にポストするときのサポートされていないメディア タイプ
次のように、JQuery 3 を使用して API にデータを投稿しています。
実行すると、次のエラーが表示されます。
なぜこれが起こるのかわかりません。PostMan を使用して API をテストし、次の Body で Post リクエストを送信しました。
そしてそれはうまくいきました...何が欠けていますか?
jquery - JQuery 3.1 を Chrome 拡張機能にロードしますか?
私の悪い点: このプロジェクトの角度のある側面に webpack があり、JQuery をマングリングしました
Chrome 拡張機能を使用しているときに、「$ が定義されていません」というエラーが表示されます。
JQuery 1.4では問題なく動作しますが、JQuery 3.1では動作しません
これらのリンクの指示に従いました
- chrome-extension-is-not-defined-error
- load-jquery-into-a-chrome-extension
- 使い方-jquery-in-chrome-extension
- chrome-extensions-uncaught-referenceerror-is-not-defined
JQUERY ファイルの先頭と末尾に次のログ エントリを追加して、正常に実行されているかどうかを確認しました。
JQuery 3.1 で失敗する
JQuery 1.4 で動作します
JQuery 1.4 のマニフェスト ファイル (正常に動作)
以下と同じですが、次のように"scripts/jquery-3.1.1.min.js"
変更されています"scripts/jquery.js"
JQuery 3.1 のマニフェスト ファイル (動作しません)
ContentScript.js
javascript - jQuery 3.0 AJAX リクエストを中止するには?
jQuery 3.0でAJAXリクエストを中止するには?
古いバージョンの jQuery のように、promise には abort メソッドがありません。