新しいタブまたはウィンドウでそのサイトへのリンクを開くことを選択した場合、fancyboxでiframeのサイトを開きたい異なるレイアウト(完全なレイアウト)を配信する必要があります。jQueryを使用してjQueryでHREFを変更するには、その1回のクリックでのみクリックしてください。
通常のリンクではフルページが表示されますが、&タイプ= 77を最後に追加すると、CMSはiframeに適した削除されたバージョンを配信する必要があることを認識します。次のコードは、リンクがマウスの左ボタンでクリックされた場合、 "& type = 77"を添付します。
$('#mylink').mousedown(function(event) {
if(event.which == 1) {
var actualHref = $(this).attr("href");
$(this).attr("href", actualHref + "&type=77");
}
});
これは効果的ですが、クリックごとに部品が取り付けられます。だから、一度クリックしてfancyboxを閉じて右クリック(新しいタブで開く)しても、新しいURLに添付された部分が残ってしまいます。また、クリックごとにその部分をアタッチします。
URLを変更する代わりに、変更されたURLにwindow.locationを使用しようとしました。部分的に機能していましたが、正しいURLが表示されましたが、fancyboxが破損しました。 fancyboxは読み込みを開始しましたが、新しいページにリダイレクトされました。
多分もっと良いアプローチがあります。前もって感謝します。
私は1つの方法を知らなかったが、この場合、それはあまり役に立たないようだ。 - パーツを追加しますが、追加されたパーツはそのままです。次の「新しいタブで開く」のために、そのパーツはまだ残っています。 – Novi
ああ、今は必要なものを手に入れます。申し訳ありませんが、私はちょっと質問をしました(悪い習慣!)、物理的なものを変更するのではなく、ファンシーボックスのアクティベーションコードでそれを行う方が良いでしょう。 href、fancyboxにフックするためのあなたのコードは何ですか? – Psytronic
CMSに、そのページの別のレイアウトを提供する必要があることを知らせるために、hrefを変更する必要があります。私はちょうどこの$( "#mylink")のようなfancyboxを起動します。fancybox(); – Novi