8

カスタム joomla テンプレート ヘッダーから不要なスクリプトを削除しようとしていますが、これを除いてすべてを削除することができました。

<script type="text/javascript">
jQuery(document).ready(function()
                {
                    jQuery('.hasTooltip').tooltip({});
                });
  </script>

私は何時間も検索し、削除するために多くのことを試みましたが、削除できないようです. 不要な他のスクリプトを削除するために私が行ったことは次のとおりです(この問題を抱えている他の人のために):

# unset frameworks
JHtml::_('bootstrap.framework',false);
JHtml::_('jquery.framework',false);

# unset scripts
unset($doc->_scripts[$this->baseurl.'/media/jui/js/jquery.min.js']);
unset($doc->_scripts[$this->baseurl.'/media/jui/js/jquery-noconflict.js']);
unset($doc->_scripts[$this->baseurl.'/media/jui/js/bootstrap.min.js']);

誰かがそのツールチップ JavaScript を削除するのを手伝ってくれたら、それは素晴らしいことです。コア ファイルには触れたくないので、テンプレートの index.php ファイル自体から削除しようとしています。

4

9 に答える 9

4

一部のコンポーネント/モジュール/プラグインが関数 JHTML::_('behavior.tooltip') を呼び出しています。その関数がコードを追加します。

できるよ:

汚い方法: libraries\cms\html\bootstrap.php に移動し、tooltip() メソッドでファイルを変更します。ただし、これはコア ファイルであるため、アップグレードによって変更が上書きされる可能性があることに注意してください。

クリーンな方法は、このコードを追加するコンポーネントを見つけて削除または変更することです。

幸運を

于 2013-05-25T09:15:02.700 に答える
3

テンプレートの index.php ファイルで次のコードを使用して、埋め込まれた JavaScript を取り除くことができました。

unset($this->_script['text/javascript']);

免責事項: 私は PHP 開発者ではないので、上記のコードは自己責任で使用してください :)

于 2013-09-03T12:13:28.437 に答える
2

Joomlaドキュメントに基づいて、考慮すべき2つのこと:

a) 以下のコードでは、実際にブートストラップと jquery を有効化/含めています。

# unset frameworks
JHtml::_('bootstrap.framework',false);// including bootstrap!
JHtml::_('jquery.framework',false);// including jquery!

ブートストラップが有効になっている場合、joomla は自動的に jquery を有効にし、joomla が jquery を有効にしている場合、joomla は自動的にツールチップを有効にします。

これらの関数を呼び出さないでください。unset使用したものは、ブートストラップと jquery を正しく削除します。

unset($doc->_scripts[$this->baseurl.'/media/jui/js/jquery.min.js']);
unset($doc->_scripts[$this->baseurl.'/media/jui/js/jquery-noconflict.js']);
unset($doc->_scripts[$this->baseurl.'/media/jui/js/bootstrap.min.js']);
unset($doc->_scripts[$this->baseurl.'/media/jui/js/jquery-migrate.min.js']);

b) ツールチップ スクリプトがまだ含まれている場合はJHtml::_('behavior.tooltip');、使用されているコンポーネントのどこかに挿入されている可能性があります。

最後に、決して Joomla コア ファイルを変更しないでください。それは最悪の方法です。

PS。 ツールチップ スクリプトが挿入されていると述べたが、 に見つからない場合は、にインライン スクリプトが含まれ$docていないためです。$doc

于 2014-11-30T15:58:36.957 に答える
1

私はすでにこの問題に遭遇しています。私は Joomla 3 を使用しています。あなたの場合は、これを実行することで解決できます。Joomla 3 には jQuery が搭載されているため、Joomla を自分で追加すると、問題が発生する可能性があります。また、必ず jQuery を の上に含めてください<jdoc:include type="head" />。必要に応じて含めてください。しかし、私はこれをお勧めしません。お役に立てれば

于 2014-04-16T13:08:59.597 に答える
0

JHtml::_('behavior.tooltip');Bootstrap の設定を解除し、任意のコンポーネントのどこかに挿入されたツールチップ関数スニペットも削除する Joomla プラグインが利用可能です。

ここを参照してください:Bootstrapプラグインを無効にする

于 2016-05-27T12:56:04.420 に答える