問題タブ [jquery-bbq]
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 - 今日(2011年)はどのJavaScriptハッシュ変更/履歴ライブラリを使用する必要がありますか?
1)JavaScriptアプリケーションに使用する必要があるJavaScriptハッシュ変更/履歴ライブラリ/メソッドはどれですか?
2)そして、その方法を使用してこれら3つのことをどのように達成しますか?
A)ページが読み込まれたら、URLハッシュ/パラメータを解析して、アプリケーションの初期状態を設定したいと思います。
具体的には、私のアプリケーションは、selectedCountry、selectedYearなどの属性を持つ2つのモデルを持つBackboneコレクションで構成されています
(これは複雑な状態を持つ非常にカスタマイズされた視覚化アプリであるため、Backbone.Routerを使用できないと思いますか?)
B)アプリの状態を対応して更新できるハッシュチェンジリスナーなどを設定したい
C)バックボーンコレクションの変更イベントで、URLを更新したいと思います。重要:フィードバックループが発生しないように、これを実行している間、hashchangeリスナーを一時的に削除したいと思います。
注:アプリはすでに一部のHTML5テクノロジーに依存しているため、ソリューションは古いブラウザーと互換性がある必要はありません...しかし、以前にこれに苦労したことがあるため、「フィードバックループ」の部分は重要です...
ありがとう :)
javascript - $(document).ready 中、$(document).ready 中に追加された要素は変更できません
クリックするとデータ (ジョブの説明) が表示されるオプション (ジョブ カテゴリ) のリストを含むページを実装しました。バックスタックを処理するためにBBQを使用しています。
ユーザーが最初にページに移動したときに初期選択を設定することを除いて、すべてがうまく機能します。私のコードは正しい要素に呼び出されaddClass('selected')
ていますが、コードの実行時にその要素が実際には利用できないようです。
$('#category' + C).append('bite me');
これがスタイルシート/CSS の問題ではないことを証明するためにデバッグ コールを追加したことに注意してください。
これが私のコードです:
historyCallback
から直接呼び出された最初の$(document).ready
はC
未定義であるため、デフォルトのカテゴリである#has を設定するelse
ステートメントが実行されます。$.bbq.pushState({ category: 3 },2);
category=3
これによりhistoryCallback
、今度は が呼び出されC == 3
ます。if
句の最後の 3 行は効果がありません。
カテゴリをクリックすると、これらの行が期待どおりに機能することに注意してください。
で作成された#category
アンカーはloadCategories()
、このコードが実行されたときに jQuery/DOM/その他でまだ利用できないようです。
ある種の遅延または何かが必要ですか?私は何が欠けていますか?
ありがとうございます。
jquery - jQuery BBQ プラグインを使用する場合、getState() メソッドで大文字と小文字を区別しないようにする方法はありますか?
jQuery BBQ プラグインを使用しています: http://benalman.com/projects/jquery-bbq-plugin/
それはかなり素晴らしいものでしたが、$.bbq.getState();
ケースの呼び出しが重要なようです。
たとえば、次の URL を考えてみますhttp://mysite.com/#someVar=someValue
。
を呼び出す$.bbq.getState('someVar');
と、クエリ文字列変数の値を取得できますが、$.bbq.getState('somevar');
(小文字の v で)を呼び出すと、値はundefined
.
常に正しい大文字と小文字で記述される定数値を使用して URL を作成できますが、ユーザーが URL を入力するシナリオを考えています。間違った大文字と小文字を入力すると、$.bbq.getState()
メソッドは「someVar」値が URL の一部ではないことを教えてくれます。
だから私は疑問に思っています...大文字と小文字を区別しないようにする方法はありますか?$.bbq.getState()
jquery - 影響を与えずにbbqremovestate
状態フラグメント検索を削除するにはどうすればよいですか?
状態:#tab = 2&search = true
removeState行のコメントを外すと、最初にtab = 2で構成される新しい状態が作成され、新しい状態tab1に置き換えられます。検索フラグメントを削除して、1つの新しい状態でtab=2をtab=1に置き換えるにはどうすればよいですか?
javascript - 複数のハッシュを使用するには?
現在、Ben のAlman jquery-hashchange プラグインを使用して、ハッシュでページ番号を使用しています。
ここで、もう 1 つの値を追加する必要があります - filter
。結果のハッシュURLは次のようになると思います
それを解析する方法は?page
つまり、 が定義されているかどうか、 が定義されているかどうかを理解する方法filter
(および値は何ですか - 1
、1
および0
- 個別に必要です)?
Ben の Alman BBQ プラグインについて考えていましたが、(1) このような単純なタスクには複雑すぎるように見えます。(2) 値なしでパラメーター (page1、page2 など) を使用する方法がわかりません。
jquery - jQuery BBQプラグインで値なしのパラメーターを使用するにはどうすればよいですか?
次のようなハッシュ値を定義して読み取る必要があります
つまり、ページ番号はパラメータの一部であり、値はありません。そのようなパラメータをどのように操作(取得および設定)しますか?
jquery - jQueryBBQ-PluginはまだJQuery1.7xで動作していますか?
短い質問ですが、そのヒントはどこにも見つかりませんでした。jQueryBBQプラグインは、v1.4.2まではjQueryでのみ動作するようにテストされているようです。現在、jQueryの現在のバージョンはv1.7.1ですが、プラグインは引き続き機能するのでしょうか。
これまで使用したことがなく、動作させるために絶望的に時間を無駄にしないようにしたいだけです...
jquery - BBQ ハッシュ履歴と混合された jQuery Isotope Combination Filters - 方法を理解するのに助けが必要
Jquery BBQ Hash Historyで組み合わせフィルターを使用する方法を理解しようとしています。
私がやりたいのは、ロゴ、アイデンティティ、またはブランディングによるユーザー フィルターです。ユーザーがロゴをクリックした場合、「非営利、教育、小売」などでサブフィルターできるようにしたいと思います。jquery BBQ コードを実装しなくても組み合わせフィルターが正常に機能することはわかっていますが、両方を実行したいと考えています。
jquery - JQuery BBQ を使用するときに通常のアンカー機能を実装する方法はありますか?
それだけです-または、別のdiv/etcをリロードせずにコンテンツを1つのdiv/etcにロードする別の簡単な方法はありますか? & バック、ブックマーク、アンカー機能付き?
ありがとう
アドオン: または - jquery/javascript ソーサリーを使用して「ポイントまでスクロール」する別の方法はありますか? JQuery BBQ と jquery/javascript スクロールを使用できるようにするには?
私はただこれを成し遂げる必要があります。
javascript - なぜprototype.jsを含めるとjquery bbqの機能が損なわれるのですか?
私は持っている:
さて、問題は、Regular-Visitors-&-Ops.html ページがロードされないことですが、ロードしていました! そのため、prototype.js を含めないことでそのリンクが jquery bbq の方法で機能することがわかるまで、元に戻す操作をいじくり回しました。
何を与える?両方のprototype.jsとjquery bbqを共存させるにはどうすればよいですか? 私は別のもののために両方が必要です..
これを起動して実行するには、同じディレクトリに追加の Regular-Visitors-&-Ops.html ファイルが必要です。
jquery と同様に、jquery bbq の 2 つのスクリプト (1 つには自分で名前を付けました) と、prototype.js です。
これを設定すると、テイクアウェイ プロトタイプと、Regular-Visitors(...) リンクが機能します。問題は、prototype.js を使用していることです。したがって、これら2つを機能させる方法、またはより簡単に、scrollTo関数を実装する方法(jquery bbqがアンカー/ハッシュを占有しているため、アンカーを使用できません(例:「index.html#の「#welcome」」)ようこそ") WITH OUT USING PROTOTYPE.JS? あるはずですよね?