2011-12-18 2 views
1

divにコンテンツを読み込む関数を実行します。私はinnerHTMLを使用しています、私はPHPファイルの内容でdivのinnerHTMLを更新するphpファイルを取得します。このクリックイベント関数を、divのロード時に自動的に呼び出されるイベントに変換するにはどうすればよいですか?

このdivには、「tweet」というクラスとIDを持つ別のdivが含まれています。このdiv要素は、特定のハッシュタグの実際のツイートで更新され、$変数を介して関数に渡さ

それはこのような単純onclickイベントである場合、それは正常に動作します:しかし

<p><a href="#" onclick="tweet('<?echo $hashtag;?>')">activity</a></p> 
<div class="tweet" id="tweet"></div> 

、どのようなI "tweet" divがロードされたら自動的にtweet( '')をロードするようにします。

ツイート(ハッシュタグ)関数である:jqueryのさえずる関数を呼び出すPHPファイルをロード

function tweet(hashtag) { $("#tweet").load('tweet.php?hashtag='+hashtag); } 

jQuery(function($){ 
    $(".tweet").tweet({ 
     avatar_size: 32, 
     count: 3, 
     query: "<?echo $hashtag;?>", 
     loading_text: "loading tweets...", 
     refresh_interval: 3 
    }); 
}); 

渡されたハッシュタグに基づいて、3つのつぶやきを示します。 ページが読み込まれると、セッション変数としてハッシュタグが呼び出されます。

リンクをクリックするとすべて正常に動作します。このロードを自動的に行うには、何が必要ですか。リンクをクリックする必要はありませんか?私はいくつかの自動リフレッシュオプションを試しましたが、それを得ることはできませんでした。私は本当に助けに感謝します。

これはちょうど正規のページが読み込まれている場合、私は単に$(document).readyを使用してjquery関数を呼び出すことができます。しかし、divが新しいPHPファイルの内容で埋められているため、動作しません。私は自動リフレッシュ間隔、ウィンドウのロードなどを使用して数回試しました。どちらもうまくいかないようです。

答えて

0

これをしようとする2つの方法があります。

  1. あなたはdiv要素をロードするために呼び出す関数から何らかの形でコードを実行します。プラグインのコンセプトをまとめることもできます。 "eval"が便利かもしれません。)
  2. divの後にタグを追加します。希望どおりに動作すると、そのコードはすぐに実行されます。
+0

私にはわかりません。この関数は機能します。単語 "activity"をクリックすると、3つのつぶやきがその下のdiv "tweet"に読み込まれます。 しかし、私はリンクをクリックする必要はありません、私はそれだけで独自の機能を実行したいです。 –

+0

@DonShappelle:divをロードするページを担当している場合は、コードを実行できます。だから、divを記入し、メソッドを呼び出します。 –

+0

最初のクリックは、左のdivのinnerHTMLをphpファイルで更新する関数を呼び出します。別の関数が呼び出され、右のdivの内容をphpファイルで更新します。 (innerhtml = httpレスポンスはPHPファイルのGETです)。ハッシュタグは、左div innerhtmlがGETによって更新されたときに取得されます。右側はセッション値を取得して出力することができますが、それが終了するところです。私はこれを自動的に動作させるために、最初のjavascript呼び出しを再作成する必要があるように感じます。あなたがdonshappelle.com/chatでチャットすることができれば、私はあなたの時間の5分を感謝します。 –

関連する問題