首先是URL: http://isotopethemes.com/js-conflict/community-listings/naples/
我正在使用Savant主题来建立一个网站,在上面的页面中,我使用BedStax来获取区域列表。为了获得区域列表,我使用以下代码作为自定义字段:
<!--<script type="text/javascript" src="http://www.bedstax.com/realtorData/featuredCommunities.php?state=FL&area=Bonita Springs%20/%20Estero"></script>
//-->
<script type="text/javascript">
var state = 'FL';
var area = 'Naples';
var idx = '583';
var agent = 'xxx';
var domain = 'xxx';
function setCommunity(community,communityName) {
var cookieSet = window.state + "::" + window.area + "::" + window.idx + "::" + window.agent + "::" + window.domain + "::" + community + '::' + communityName;
document.cookie='idxCookie=' + cookieSet + '; path=/';
document.location.href = '/featured-communities-info';
}
jQuery(document).ready(function() {
jQuery.ajax({
url:"http://bedstax.com/realtorData/newFeatComm.php?state=" + window.state + "&area=" + window.area + "&idx=" + window.idx,
dataType: 'JSONP', // Notice! JSONP <-- P
success:function(json){
$('.output').html(json);
},
error:function(){
alert("Error");
},
});
});
</script>
<div class="output">
</div>
问题是,无论在哪里,这段代码生成的区域列表的所有JS在页面上停止工作,在上面的链接页面的搜索栏弹出滑下不工作。在这个页面上:http://isotopethemes.com/js-conflict/about-2/点击搜索栏,它会滑下来,与右上角的加号一样。
我查看了控制台,得到了这个错误:未捕获的类型错误:这个。On不是一个函数(第16行jquery.min.js)。
我已经挣扎了好几天了,如果你想的话,我可以给你wp登录id和密码,任何帮助都会很感激:)
更新
这最终成为(聊了一分钟后)jquery版本。更新到1.7被证明是解决方案。(注意:2.0.1会再次打破它,所以1.7是最佳点)。
我们把封装留在了代码中,所以我也把它留在了答案中。
尝试封装您的jquery,看看是否有帮助。
(function($){
$(function(){
$.ajax({
url:"http://bedstax.com/realtorData/newFeatComm.php?state=" + window.state + "&area=" + window.area + "&idx=" + window.idx,
dataType: 'JSONP', // Notice! JSONP <-- P
success:function(json){
$('.output').html(json);
},
error:function(){
alert("Error");
}
});
});
})(jQuery);