2012-04-28 5 views
0

チャットルームの視聴者数をカウントし、チャットの上のメインのウェブサイトに表示されるカウンターがあります。これは私のメインのウェブサイトで実行されているスクリプトからjson経由で取得されます。ユーザーがチャットをポップアウトしたい場合、ボタンをクリックするとポップアップが表示されます。問題は、メインのウェブサイトのスクリプトから視聴者の価値をつかんで、それを爽やかにすることなく、ポップアップ内のdivに動的に配置する必要があるときです。ポップアップコンテンツを外部ソースから動的に変更する

私はメインのウェブサイトですでに毎秒呼び出されているので、私はjsonを2回呼び出すことを避けようとしていました。私は、外部のjavascriptファイル(ポップアップでリンクされていない)からポップアップのテキストの色を動的に変更することを確認する簡単なテストを作成しようとしました。

function popUp() { 
    newwindow=window.open('mod.html','test','height=200,width=150'); 
     newwindow.focus(); 
    $('#blue').css('color', 'red'); 
    return false; 
} 

これは私が届かない私のmod.htmlの内容

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<body> 
    <div id="blue" style="color:blue"> 
     This is Blue 
    </div> 
</body> 
</html> 

です:

私の外部のJavaScriptファイルは、ユーザーがリンクをクリックしたときに呼び出されています機能を持っていますエラーが発生しましたが、何も結果が得られません...

TL; DRポップアップでテキストを変更する方法ポップアップでリンクされていない外部のjavascriptファイルから

答えて

1

短い答えは、あなたのポップアップは完全に別個のブラウザウィンドウであるため、すべてを自分で処理する必要があるということです。したがって、このページのDOMでもajax呼び出しを行う必要があります。

長い答えは、完全に新しいブラウザウィンドウを開くのではなく、指定されたコンテンツを含むCSSでうまくスタイル付けされた「ポップアップ」ディビジョンを使用する方が良いでしょう。 http://jqueryui.com/demos/dialog/を参照してください。divポップアップがある場合は、別のdivだけです。ページの他のdivと同じように、ハイライトやコンテンツの変更などができます。

+0

通常のポップアップウィンドウよりもはるかに見やすいです。私はそれを確認する必要がありますありがとう:3私は戻ってきて、それが働く場合はチェックマークを付けます。 –

+0

これで私が見つけた唯一の問題は、(1)かなりキラーな別のフレームワーク(UI)を含める必要があり、それはちょっと大きかったです。 (2)実際のウィンドウではないので、最小化する実際の方法はありません。私はそれを最小化するためにそれをmoddingするいくつかの例を見ましたが、それはちょうど1つのモジュールウィンドウのために少し多く見えました。私は、より良い選択肢がない限り、ポップアップを介して別のAjaxコールを行うのが最善であると考えています。 –

関連する問題