1

除非这是一个严重的问题,否则我不会问 stackoverflow。我根本无法弄清楚如何调试这个特定问题。向左导航无序列表元素注入了内联显示属性。我无法弄清楚这是什么 js 代码。

js/custom.js中有一个文件,如果我删除该文件,效果不会发生。所以我假设它在那里。我尝试了 grepping ,.attr, .hide, .css etc etc但没有任何结果指向我试图追踪的显示效果的ul元素。我在 php 文件中搜索了它回显或打印元素的实例,但那里也没有任何内容。我使用了 firebug 和 firequery,但在检查元素后没有出现任何明显的问题。我尝试了 chrome 工具中属性更改的断点。

我怀疑答案会在 DOM 检查器中,但它对我来说很神秘。我将需要阅读有关 firefox 和 chrome 工具的 DOM 树视图。但与此同时,任何人都可以给我一个线索,说明什么是给带有类 subs的ul元素,在这个页面中,它们的 display 属性?

4

2 回答 2

3

这在 Chrome 中很容易弄清楚。

  1. 找到包含列表的父元素。
  2. 检查所述父元素。
  3. 右键单击元素并选中“中断子树修改”
  4. 通过检查堆栈跟踪找出谁添加了元素。
  5. 利润!

希望能帮助你找到罪魁祸首。

于 2012-08-27T03:53:32.263 回答
2

您是否尝试过 Google Chrome 开发人员工具,以查看 CSS 是否是隐藏您正在查看的元素的原因?

只需单击 Chrome 浏览器中的元素,然后选择检查元素,然后查看可用的 CSS 属性。

最终,导致我这样做的是,我点击了某些文本,打开了下面的 li。然后我搜索文本,当我检查元素时,找到了带有文本的锚标记。然后我假设锚一定是罪魁祸首,并搜索了它的相关类名“exp”,并找到了包含该函数的 js 文件。

我查看了 Crown/js 文件夹中的 custom.js,发现以下内容:

$('.exp').collapsible({
        defaultOpen: 'current',
        cookieName: 'navAct',
        cssOpen: 'active',
        cssClose: 'inactive',
        speed: 200
    });

Li 中有一个锚元素,类为“exp”

<li class="forms"><a href="#" title="" class="exp"><span>Forms stuff</span><strong>4</strong></a>
            <ul class="sub" style="display: none; ">
                <li><a href="forms.html" title="">Form elements</a></li>
                <li><a href="form_validation.html" title="">Validation</a></li>
                <li><a href="form_editor.html" title="">WYSIWYG and file uploader</a></li>
                <li class="last"><a href="form_wizards.html" title="">Wizards</a></li>
            </ul>
        </li>

当点击这个标签时,它会得到另一个名为“active”的类,然后 jQuery 会注入显示代码:

<li class="forms"><a href="#" title="" class="exp active"><span>Forms stuff</span><strong>4</strong></a>
            <ul class="sub" style="display: block; ">
                <li><a href="forms.html" title="">Form elements</a></li>
                <li><a href="form_validation.html" title="">Validation</a></li>
                <li><a href="form_editor.html" title="">WYSIWYG and file uploader</a></li>
                <li class="last"><a href="form_wizards.html" title="">Wizards</a></li>
            </ul>
        </li>

然后 CSS 处理其余部分。

于 2012-08-27T03:54:39.663 回答