尝试将jQuery 1.4.2插件更新为1.8.2,但收到语法错误,无法识别的表达式

Mig*_*wab 5 ajax jquery jquery-plugins

[解决]

请参阅下面的问题详细信息

这条线

var maxUl = $(objUl+'[rel="'+maxItems+'"]');
Run Code Online (Sandbox Code Playgroud)

需要是

var maxUl = $(objUl.attr('id')+'[rel="'+maxItems+'"]'); 
Run Code Online (Sandbox Code Playgroud)

使用当前的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);
Run Code Online (Sandbox Code Playgroud)

在打电话之后我最好能告诉他们休息

var maxUl = $(objUl+'[rel="'+maxItems+'"]');
Run Code Online (Sandbox Code Playgroud)

因为firebug没有使它成为findMaxIndex()方法中的断点.

我的HTML文件看起来像这样

JS Call

$(function() { // Drill down menu
  $('#drilldown').dcDrilldown({
    speed           : 'slow',
    saveState       : true,
    showCount       : false,
    linkType        : 'breadcrumb'
});
Run Code Online (Sandbox Code Playgroud)

HTML ul

<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>
Run Code Online (Sandbox Code Playgroud)

感谢所有人,非常感谢您提供的任何帮助.

jwe*_*ndl 6

你需要看一下objUl的设置.我打赌它在用于连接到另一个字符串时将其自身解析为字符串.现在它可能不会那样做(因此[object Object]部分).

看看objUl的设置是什么,并尝试获得它的.attr('id')值.

编辑 更改

var maxUl = $(objUl+'[rel="'+maxItems+'"]'); 
Run Code Online (Sandbox Code Playgroud)

var maxUl = $(objUl.attr('id')+'[rel="'+maxItems+'"]'); 
Run Code Online (Sandbox Code Playgroud)