javascript:void();への外部リンクを作成できません。


7

実際のリンクなしメニュー項目に関する投稿を書いているときに、Joomla 3.3.3で奇妙な動作に遭遇しました。

<a>リンクしているタグ"#"がクリックされたときにページが最上部にスクロールする可能性があること、およびメニュー項目のjavascript:void();リンクフィールドで使用する方がよいことを指摘したかったのExternal URLです。(この記事ではその理由を説明します。)

以前は自分でこれを行っていましたが、Joomla 3.3.3では、リンクフィールドにが含まれてjavascript:void();いる場合、保存を拒否することがわかりました。次のスクリーンショットを見てください([保存]ボタンを押す前後):

保存前後

以前のJoomlaバージョン(3.0.3)でテストしたところjavascript:void();、リンクフィールドで引き続き使用できました。

これはJoomlaの新しいバージョンのバグですか、それとも、J3.0.3とJ.3.3.3の間のどこかで、javascriptへのリンクが許可されなくなったと判断されましたか?

回答:



3

バレンティンの答えに加えて、これはメニュー項目にJavaScriptコード追加する方法です:

  • カスタムリンクメニュー項目を作成する
  • #リンクフィールドに追加
  • ページの他の場所(フッターなど)にJavaScriptを追加して、クリックイベントを処理します。

例:

jQuery(document).ready(function($){   
  $(".menuitemclass").click(function () {
    //your javascript function;     
  });
});
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.