要点を知りたい場合は、ここに私の質問 があります。特定のスクリプトを呼び出して、最初にjavascriptにロードする方法はありますか?
詳細については、以下をお読みください。
HTMLの下部からロードしているjavascriptファイルがあります<body>
。残念ながら、先頭にJQueryがないため、このjavascriptファイルを使用してJQueryを追加する必要があります。
私がする必要があるのは、JQueryライトボックスプラグインを追加することです。
私の問題は、ページをロードするときに、JQueryが最初にロードされないことがあるということです。そのため、「jQueryが定義されていません」というエラーが表示されます。これにより、プラグインからの未定義のメソッドに対してより多くのエラーが発生します。
これは常に発生するわけではなく、たまにしか発生しません。これは、操作の読み込み/順序の問題だと思います。
JQueryスクリプトが最初に読み込まれることを保証する方法はありますか?
これが私のjavascriptファイルの一部です。
//Get head element
var head = document.getElementsByTagName("head")[0];
//Create and insert JQuery
var jquery = document.createElement('script');
jquery.type = 'text/javascript';
jquery.src = 'http://image.iloqal.com/lib/fe6b/m/1/jquery.1.7.2.js';
head.insertBefore(jquery,head.childNodes[4]);
function thescripts() {
var fancybox = document.createElement('script');
fancybox.type = 'text/javascript';
fancybox.src = 'http://image.iloqal.com/ilejquery.fancybox-1.3.4.pack.js';
head.appendChild(fancybox);
var thebody = document.getElementsByTagName('body')[0];
thebody.appendChild(thediv);
thediv.appendChild(theimg);
//Run fancybox
thebody.onload = function() {
$('#lightbox').ready(function() {
$("#lightbox").fancybox().trigger('click');
});
}
};
if(jquery.attachEvent){
jquery.attachEvent("onload",thescripts());
} else {
jquery.onload = thescripts();
}
どんな助けでも大歓迎です!