请参阅下面的问题详情。
该行
var maxUl = $(objUl+'[rel="'+maxItems+'"]');
需要
var maxUl = $(objUl.attr('id')+'[rel="'+maxItems+'"]');
使用当前的jQuery 1.8.2实现。
首先感谢您花时间与我一起看待我的问题。我已经查看了许多其他问题,并且我可以说这个问题不一样。
当我尝试在页面上加载jQuery插件时,我从firebug收到此错误:错误:语法错误,无法识别的表达式:[object Object] [rel =“7”]
注意:该插件在运行jQuery 1.4.2时运行正常,但运行多个jQuery实例不适合此项目。
到目前为止,我认为我已经设法将其缩小到他的js文件中的这两行(jquery.dcdrilldown.1.2.js)
// Get level of largest sub menu
var maxUl = $(objUl+'[rel="'+maxItems+'"]');
var getIndex = findMaxIndex(maxUl);
在调用
之后,我最好能告诉他们var maxUl = $(objUl+'[rel="'+maxItems+'"]');
因为firebug没有进入findMaxIndex()
方法中的断点。
$(function() { // Drill down menu
$('#drilldown').dcDrilldown({
speed : 'slow',
saveState : true,
showCount : false,
linkType : 'breadcrumb'
});
<div class="graphite dd-container">
<ul id="drilldown">
<li><a href="#">Home</a>
<ul>
<li><a href="#">Page 1</a></li>
<li><a href="#">Page 2</a></li>
<li><a href="#">Page 3</a></li>
<li><a href="#">Page 4</a></li>
</ul>
</li>
<li><a href="#">Products</a>
非常感谢您提供的任何帮助,谢谢大家。
答案 0 :(得分:6)
您需要查看objUl的设置。我打赌它在用于连接到另一个字符串时将其自身解析为字符串。现在它可能不会那样做(因此[object Object]部分)。
看看objUl的设置是什么,并尝试获得它的.attr('id')值。
修改强> 改变
var maxUl = $(objUl+'[rel="'+maxItems+'"]');
到
var maxUl = $(objUl.attr('id')+'[rel="'+maxItems+'"]');
答案 1 :(得分:0)
要使用jQuery 1.10.4,以下更改会使其正常工作
// var maxUl = $(objUl+' [rel="'+maxItems+'"]');
var maxUl = $(objUl.html()+' [rel="'+maxItems+'"]');
和
//$('#'+idHeader+' a').live('click',function(e){
$('#'+idHeader).on('click','a',function(e){