wordpress加载jquery的次数太多了

时间:2015-04-21 02:48:39

标签: jquery wordpress

我不知道为什么,但是当我显示Wordpress页面的源代码时,每个脚本前都有<script src="ROOT/jquery">

<head>标签之间加载一次就足够了。这导致另一个脚本无法正常工作。我读到了一个名为wp_enqueue的函数,但我不明白它是如何工作的。

这是它不起作用的脚本:

   <script>
   $(document).ready(function(){
//Datepicker Popups calender to Choose date
$(function(){
    $( "#datepicker" ).datepicker({
            changeMonth: true,
            changeYear: true,
            showButtonPanel: true,
            yearRange: '1900:2050',
            dateFormat: "dd/mm/yy"


    //Pass the user selected date format 
    });
  }); 
});
</script>

有人能帮助我吗?

谢谢,
丹尼尔

2 个答案:

答案 0 :(得分:1)

更新:在WordPress中查看jQuery noConflict Wrappers

<script>
jQuery(document).ready(function($) {
    $( "#datepicker" ).datepicker({
        changeMonth: true,
        changeYear: true,
        showButtonPanel: true,
        yearRange: '1900:2050',
        dateFormat: "dd/mm/yy"
    });
});
</script>

我在本地安装的WordPress上进行了测试,没有更多错误

更新#2 :现在这是一个CSS错误。

this workaround,为每个datepicker元素设置z-index应该可以解决问题:

<input id="datepicker" style="position:relative;z-index:200;width:250px;" readonly="readonly" type="text" maxlength="20" name="Date of Birth" placeholder="dd/MM/yyyy" class="hasDatepicker">

答案 1 :(得分:0)

wp_enqueue允许您从函数或任何其他操作页面(如插件)向您的站点添加更多脚本和CSS。 你必须已经包括jquery。 wordpress默认包含jquery,所以你不需要自己包含它。检查您是否将其包含在主题中并将其删除。

您不能将$()与wordpress jquery一起使用jQuery()或:

(function($) {
    $() // using $() here should now work.
})( jQuery );