問題タブ [jquery-ui-widget-factory]
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 UI ウィジェットの factory _on イベントが予期しないイベント ターゲットを返す
jQuery Ui ウィジェット ファクトリのイベント処理を理解するのに少し問題があります。
この抜粋を参照してください:
この HTML で実行:
実際のデモ: http://jsfiddle.net/ech2htrt/2/
ギャラリー内の画像をクリックすると、コンソール出力は次のようになります。
オブジェクト[img 50x50]
<a>
ギャラリー内の要素だと思っていました。もちろん、closest()
またはparent()
を使用して目的の要素を取得することもできますが、それはかなり不自然に感じます。イベント ハンドラーの定義のどこで間違っていましたか?
イベント トリガー要素を取得するより良い方法はありますか? 私が使用するとき、this
または$(this)
参照は常にウィジェット要素です。
jquery-ui - jquery-ui selectmenu 拡張メソッド (_renderItem、_renderMenu など) の使用方法
JQuery-UI selectmenu ウィジェットには、ドロップダウン選択メニューのレンダリング/スタイリングをカスタマイズするために使用できるいくつかの拡張メソッドがあります。API ドキュメントから、次のウィジェット拡張メソッドを使用してメニューをカスタマイズできます: - _renderItem( ul, item ) - _renderMenu( ul, items )
私が達成したいのは、グローバルレベルではなく、selectmenu ウィジェットの 1 つのインスタンスに対して上記の拡張メソッドをオーバーライドすることです。ウィジェット ファクトリ ドキュメントには、ウィジェットの特定のインスタンスの拡張に関する例があります (例はこのページの下部にあります) が、それを selectmenu 拡張メソッドに適用することに成功していません。この問題についての洞察は大歓迎です。
javascript - Jquery Ui Widget Factory の子要素で継承されたウィジェットを使用する
ドラッグ可能を継承する JQuery Ui ファクトリを使用して、ドラッグ可能なカスタム ウィジェットを作成しようとしています。
要素自体の場合は正常に機能しますが、子要素でのみドラッグ可能を使用する必要があります。ihreritance で使用することは可能ですか、それともいつものようにドラッグ可能なものを使用する必要がありますか?
ここに私の完全な例があります: http://jsfiddle.net/vlrt/j1uogfrx/4/
reactjs - React.js と jQueryUI ウィジェット ファクトリの違い
最近、Facebook から react.js ライブラリについて読んでいますが、React と jQueryUI ウィジェット ファクトリの違いがわかりません。誰かが2つを比較して、jQuery widget factory の代わりに react.js を使用する必要がある理由を教えてもらえますか?
ありがとう
javascript - プロトタイプ内から jQuery UI ウィジェットを破棄する方法
プラグインを作成するために Widget Factory を使用することに乗り込みました。ただし、プラグインを内部から破壊する方法が見つからないようです。
これまでに見つけたすべての例とチュートリアルでは、プラグインを DOM から破棄しています。これはすべて良いことですが、プロトタイプ内からプラグインを破棄できるようにしたいと考えています。
たとえば、プラグインが不適切なパラメーターまたは不適切な要素で呼び出された場合、またはしばらくしてから検証されなかったとします。後で this.destroy() を呼び出してプラグインを破棄できるようにしたいと思います。this.destroy() を呼び出すと、 $.Widget.prototype.destroy() とそれに続く _destroy() メソッドが呼び出されますが、インスタンスはまだ DOM 要素にあります。$(el).pluginName('destroy') を呼び出した場合にのみ、本当に破棄されます。
ここで簡単な例
いくつかのhtmlがあるとしましょう
jQuery UI ウィジェットは、作成されるとすぐに破棄することを目的としています。
プラグインを呼び出します
インスタンスが $('p') に設定されないことを期待しますが、
DOM からメソッドを呼び出した場合にのみ破棄されます
誰か考えはありますか?