4

私のウェブサイトのユーザーに毎日送信されるメールダイジェストがあり、サイト上のものへのリンクが含まれているため、ユーザーは簡単にメールにアクセスしてやり取りを開始できます。問題は、複数のリンクをクリックすると、複数のブラウザが開かれることになり、技術者以外のユーザーがそれをキャッチできず、作業が完了したときに多数のタブ/ブラウザを閉じなければならない可能性があることです。サイト。メールダイジェストのすべてのリンクを同じウィンドウ/タブで開くようにしたい。

hrefあなたが持っているならあなたが設定することができtarget=my_window、リンクがそのウィンドウで開くことを私は知っています。aタグを編集する代わりに使用できるURLパラメータがあるかどうか疑問に思います。

4

4 に答える 4

3

いいえ。特別な動作をリンククエリ文字列に関連付けるブラウザ(または他のユーザーエージェント)を知りません。クエリ文字列は、HTTPリクエストを受信するサーバーが処理するためのものです。

あなたがあなたの質問で言うように、target属性はリンクがどのウィンドウで開くべきかを制御する(または少なくとも提案する)ための方法です。

于 2012-07-12T19:54:20.277 に答える
1

簡単な答えはノーです。あなたが話しているこの振る舞いは厳密にクライアント側であり、ブラウザによって制御されます。Webサーバーで実行されているアプリケーションは、クエリ文字列に反応する責任があります。

送信される電子メールのテンプレートを制御できませんか?ターゲットを適切なアンカーに追加するのは簡単なはずです。

于 2012-07-12T20:01:10.680 に答える
1

PHPを使用して、カスタムURLパラメーターをキャッチできます。

次のようなリンクがあるとします:www.yoursite.com/somepage.php?title=ここにいくつかのページタイトル

URLのパラメータ文字列は?something = somevalueで始まり、&記号(例:?something = somevalue&somethingelse = someothervalue)などでチェーンできます。

次に、このPHPをページの上部に追加できます。

<?php $title = $_GET['title']; ?>

次に、タイトルタグに次のように入力します。

<title><?php echo $title; ?></title>

ページに渡したい各パラメータのパラメータの値を使用して、別の変数を追加します。しかし、あなたがやろうとしていることについては、上記のコードは機能します。

于 2012-07-12T20:08:35.977 に答える
1

この方法を使用できますwindow.openか?

参照: window.open(url, name, features, replace);

これにより、ブラウザウィンドウ名前を付けることができるため、構文で機能するようにフォーマットされた新しいリンクをクリックしたときに再利用window.openできます。

例: リンク

ステータスの更新:多くのwindow.open();を検索できることに注意してください。開いたウィンドウの外観を構築するのに役立つオンラインジェネレータ。各ブラウザのアドレスバーのレンダリングは異なるため、すべてのブラウザで目的の外観をテストすることが重要です。

于 2012-07-12T20:13:52.783 に答える