私はウェブサイト上で働いている、と私のファイル構造の関連部分は次のとおりです。include()で相対ファイルのパスを使用するにはどうすればよいですか?
- サイト
- クラス
- class1に
- JS
- クラス
jsには、同じフォルダ内の他のスクリプトを使用するスクリプトが含まれています。私がPHPページで適切に読み込むためのスクリプトを取得する唯一の方法は、jsフォルダ全体を関連するサブフォルダにコピーするか、ページをサイトフォルダに移動することです。これらのオプションのどちらも良いことではありません。
私はこの問題がファイルのパスにあることを知っています。したがって、jsスクリプトのインクルードファイルを、PHPページの場所ではなく、パスの相対パスにするにはどうすればよいですか?
例:
class1にはclass1home.phpというページがあります。
script.jsというjsスクリプトを呼び出します。
script.jsには、jsフォルダにあるinclude(script2.js)を含む関数が含まれています。
パスのため、includeはsite/classes/class1/script2.jsを探しています。
サイト/ js/script2.jsに移動します。
script2.jsを使用する複数のフォルダとスクリプトがあるため、インクルード内のファイルパスをその特定のページとの相対的なものに変更することはできません。 script.js内
:
/**
* @function Include
* @description Includes an external scripts to the page
* @param {string} scriptUrl
*/
function include(scriptUrl) {
document.write('<script src="' + scriptUrl + '"></script>');
}
(script.js以内)それが使用される1つの場所:
/**
* @module ToTop
* @description Enables ToTop Plugin
*/
(function ($) {
var o = $('html');
if (o.hasClass('desktop')) {
include('js/jquery.ui.totop.min.js');
$(document).ready(function() {
$().UItoTop({
easingType: 'easeOutQuart',
containerClass: 'ui-to-top fa fa-angle-up'
});
});
}
})($);
質問が分かりますか? – Lekhnath
私はいくつかのサンプルコードがわかりやすく役立つかもしれないと思っています。有用な答えを提供するのに役立ちます – RiggsFolly
私は例を使って質問を更新しました –