如何在所有其他javascripts和js文件之前加载js文件和javascript?

时间:2013-08-04 05:33:06

标签: javascript load

我有一个colorbox.js文件和这样的javascript代码:

echo '<script src="js/jquery.colorbox.js"></script>
         <script type="text/javascript" language="javascript">
         $(document).ready(function(){

         $("#iframe").colorbox({iframe:true, width: "830", height: "620"});
      });

    </script>';
echo '<a href="prices.php" id="iframe">see the pricelist</a>';

当我点击链接时,它作为iframe弹出通过colorbox打开。但是如果我在页面完全加载之前单击它,它将作为新页面上的普通链接打开(不会弹出为iframe)。那么如何在所有其他javascripts和文件之前首先加载colorbox脚本。所以也许我可以阻止它作为普通页面打开。 谢谢。

2 个答案:

答案 0 :(得分:0)

由于您已将colorbox标签放在自定义标签之前。理想情况下,应该在执行脚本之前加载Colorbox。此外,document.ready()将确保在您的代码被触发之前所有DOM元素都可用。

请你发一个复制你问题的JS小提琴吗?

答案 1 :(得分:0)

你可以调用head标签中的一个函数,它将在完全解析DOM之前完全执行。这是使用document.ready

解决的

如果你想要执行一个你希望能够在$(document).ready()函数和更早版本中运行的代码块,那么定义一个函数并提前调用它并将其放入$(document).ready()同样。

// define this in the global scope or some other publicly available scope (not inside a document.ready() call).
function yourFunc() {
   // put your code here
}

$(document.ready(function() {
    yourFunc();
});

你可以在调用jquery库之后将这个函数放在头部,因为你需要jQuery lib来执行你的iframe代码