我正在尝试在joomla 2.5网站中运行nivo滑块,以及我需要放置日期选择器的自定义html + php模块。
在自定义模块中,我插入此代码:
<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="js/datepicker.js"></script>
<link rel="stylesheet" type="text/css" href="css/datepicker.css" />
<?php
/* Here the code for the module */
Nivo滑块插入此html代码:
<script type="text/javascript">
jQuery.noConflict();
jQuery(window).load(function() {
jQuery('#vt_nivo_slider196').nivoSlider({
effect: 'fade', // Specify sets like: 'fold,fade,sliceDown'
...
});
});
</script>
所以使用这段代码我看不到日历(datepicker)和nivo滑块不起作用(只显示一个空白区域)。
如果我删除了行jQyery.noConflict();在nivo滑块代码中,我可以看到日历(datepicker),但nivo滑块仍然不起作用(只显示一个空格)。
如果我删除了脚本类型=“text / javascript”src =“js / jquery-1.4.2.min.js”&gt;然后我可以看到nivo滑块工作,买我看不到日历(datepicker)。
在datepicker.js中我有$(document).ready(function(){$(function(){('#linkedDatepicker')...更多代码,和(function($){$ .extend($ .ui,{datepicker:{version:“1.7.2”}}); var PROP_NAME =“datepicker”;函数Datepicker(){...更多代码
这似乎是与JQuery的冲突,但我不知道如何解决它。
非常感谢任何帮助。!
答案 0 :(得分:0)
根据NivoSlider's website,它需要jQuery 1.7 +。
升级你的jQuery版本,最终你的datepicker版本应该没问题。
注意:jQyery.noConflict();
仅在您与jQuery同时使用其他javascript库时才会使用。
答案 1 :(得分:0)
谢谢Skawal回答。
不确定发生了什么,但似乎在经过多次试验后才能解决。我认为它可以帮助有类似问题的人,所以这里是我遵循的步骤:
1)在模块代码中删除jquery-1.4.2.min.js调用,现在只调用datepicker.js
2)在datepicker.js
2.1)我之前有$(document).ready(function(){$(function(){('#linkedDatepicker')...更多代码,现在用链jQuery替换代码中的所有$符号,所以现在代码看起来像jQuery(document).ready(function(){...更多代码
我不知道为什么但是$似乎出错了。
2.2)我之前有过(函数($){$。extend($。ui,{datepicker:{version:“1.7.2”}}); var PROP_NAME =“datepicker”;函数Datepicker(){。 ..更多代码,现在替换为从JQuery站点下载的新的datepicker版本.jquery-ui-1.9.2.custom.min.js之前添加了替换代码(从jquery-ui-1.9.2.custom.min添加了al代码) .js包括:jquery.ui.core.js,jquery.ui.datepicker.js)。现在代码以函数(e,t)开头{function i(t,i){var ... more code
最后一个问题是日历可视化是在nivo滑块图像的背景中,解决了更改datepicker.css添加z-index规则:#ui-datepicker-div {width:180px; z-index:50!important;}