2009-06-01 5 views
0

SharePoint Webパーツ内で実行されるJavaScriptがあります。私は、ウィンドウのサイズが変更されたときに関数を実行させたいと思います。通常は私が使用するでしょうSharePoint Webパーツからonresizeイベントにアクセスするにはどうすればよいですか?

<html> 
    <body onresize="resizeFunction();"> 
    </body> 
</html> 

しかし、SharePointのものは毛むくじゃらします。私は、私は以下のようなものを使用することができる午前onloadイベント機能があります。

_spBodyOnLoadFunctionNames.push('myFunctionName'); 

を、これはonLoadイベントで実行されます。 onResizeのイベントのようなものがありますか?あなたがJavaScriptライブラリなどのjQueryや試作品、などの外部を使用して検討するかもしれない

答えて

2

例えば、jQueryのでは、あなたが(未テストコードを!!)試してみてください

 
$("window").bind("resize", "myFunctionName"); 

jQueryのドキュメント:http://docs.jquery.com/Events/bind SharePointの中にjQueryを使って上の

情報:http://weblogs.asp.net/jan/archive/2008/11/20/sharepoint-2007-and-jquery-1.aspx

EDIT: あなたは、rをたい場合他の関数をresizeイベントに結びつける関数をドキュメントロード時に実行する。次のようなものがあります。

_spBodyOnLoadFunctionNames.push(function() { 
    window.onresize = function() { 
     /* resize code here */ 
    }}); 

もちろん名前付き機能を使用できます。

EDIT 2:上記のようにイベントを定義すると(window.onresize =)、1つのイベントに対してのみ有効です。したがって、複数のイベントハンドラが同じページ上の同じイベントに対して同じ方法で指定されている場合は、最後に指定されたものが「勝ち」ます。これを行う「正しい」方法は、イベントハンドラをアタッチすることです。これを実現する最も簡単な方法は、ブラウザ間の違いを透過的に処理するライブラリを使用する方法です。

+0

私はそうでなければ外部のライブラリを使用したくないかもしれませんが、それが唯一の方法であれば... –

1
$(window).resize(function(){     
     alert("Ya its workingggg") ;  
}); 
関連する問題