2011-12-06 23 views
1

jqueryでdivのサイズを変更し、alsoResizeトリガーを取得しようとしています: 幅を変更してからサイズ変更イベントをトリガーしようとしました。jQuery-UIのサイズ変更、プログラムによるサイズ変更

フィドル:http://jsfiddle.net/Ns3yn/2/

ありがとう!

+0

何が問題なのですか?私に見える。 – BZink

+0

画像のサイズが変更されていません(より正確にするために更新されたフィドル) – chacham15

+0

マウスを使用してサイズを変更するとわかるように、サイズ変更が正しく行われたと宣言されています。プログラムでトリガーしようとしている方法は機能しません。 – BZink

答えて

0

リサイズ可能なプラグインは、resizeイベントを使用して変更をトリガーするとは言いません。必要なのは、ウィンドウセレクタの後に.add( 'img')を追加して、期待される結果を得ることだけです。

+0

ポイントではない、ポイントは、すべてのサブ要素のサイズを変更するコードを分離していると – chacham15

0

.trigger( "resize")は実際にresizeイベントをトリガしません。

あなたがイベントに明示的にバインドする場合は、これを参照してくださいよ...

$(".window").bind("resize", function(){ 
    alert("resize event"); 

}); 
+0

あなたが間違っているようだ:http:// jsfiddle。 net/Ns3yn/7 /より具体的には、doc:divを手動で起動しても、そのイベントを受け取ることができます。 – chacham15

2

この問題は、興味深いものです。私の必要性は、多くの "alsoResize"オブジェクトのサイズを変更し、元のオブジェクトのサイズを変更する必要がありました。 1については

は、それが要求されたjQueryのUIの機能である:それは、この機能を自分で作成する代わりに、実装されるまで、
Resizable: Expose an API for programatically triggering a resize

しかし、私はかなりまともな迅速な解決策を発見しました。ソリューションは、ここから来ている:
Programmatically Resize a resizable element


ソリューションは、マウスドラッグをシミュレートするいくつかのjqueryのユニット・テスト・ライブラリを使用しています。あなたはここに必要なライブラリを見つけることができます。

var handle = ".ui-resizable-se"; 
TestHelpers.resizable.drag(handle, 50, 50); 

これはプログラム的に50で、あなたのオブジェクトのサイズを変更します:
jquery.simulate.js
resizable_test_helpers.js


だから、あなたは、このようなコードを実行することができます上記のこれら2つのファイルを含めます右と下のピクセル。

+0

私はそれが実際にはサイズ変更可能なイベントをテストするための最良のソリューションだと思います。 –

関連する問題