2011-07-04 37 views
0

私は、ユーザーがタグをクリックすると、外部のページからコンテンツをロードする必要があります。私はそうするjQueryのload()メソッドを使用してい問題負荷

$('#anchortag').click(function() { 
    event.preventDefault(); 
    $('#recepient').hide(); 
    $('#recepient').load('otherpage.php', function(data) { 
     $.fancybox(data, {}); 
    }); 
}); 

が、私が望むすべてファンシーボックスは外部コンテンツで開きますが、コンテンツは#recepientとファンシーボックスに表示されます。私がしようとすると:$.load(ターゲットを指定せずに)、それは失敗します(fancyboxは表示されず、関数は動作しません..)。

ロードまたは別のjquery関数を使用して、ファンシーボックス内の外部コンテンツのみを開くことはできますか?

編集: このスクリプトはどのようにChromeでは動作しますが、FFまたはIEでは動作しませんか?

+0

jQueryについて知っています。タイトルにタグを付けないでください。 –

+0

@Tomalak Geret'kal [OK]次のショットを知りたい –

答えて

2

代わりに$.get(..)を使用してください。 load(..)は、ターゲットオブジェクトのinnerHTMLとしてコンテンツを配置し、あなたはそれを望んでいません。

+0

うまく働く、ありがとう!私は変数trhoughを渡す必要があるときにコンテンツを読み込むだけで便利だと思ったので、最初はgetを使用したくなかった。 –

+0

aha。まあ、それはajaxを介して定期的なGET要求を行う方法です(パラメータの有無にかかわらず) – Bozho

0

私は同様のことを行っている ... ...それはあなたが何かなどを行うことができそうであるならばfancyboxは、div要素にそれにHTMLといくつかの場所を持って

テストしていない
$('#anchortag').click(function() { 
    event.preventDefault(); 
    $('#recepient').hide().empty(); 
    $.ajax({ 
     url:'path/to/html', 
     success:function(data){ 
      $('#recepient').html(data); 
      /* fire fancy box here ...*/ 
     }, 
     error:function(){ 
      alert('an error occurred') 
     } 
    }); 
}); 

    <div id="recepient" style="display:none"></div> 

を想定していますネイティブの[Jquery]ダイアログボックスで開きます。