wordpress jquery缺失:属性id之后

时间:2009-09-14 16:00:51

标签: jquery wordpress

我正在尝试使用jQuery与Wordpress一起创建一个简单的accorion菜单。

<script type="text/javascript" language="javascript">

var $j = jQuery.noConflict();


$j("#leftmenupane p.leftmenu_head").click(function(
{
    $j(this).css({'background-image' : 'url(down.png)'}).next("div.leftmenu_body").slideToggle(300).siblings("div.leftmenu_body").slideUp("slow");
    $j(this).siblings().css({'background-image' : 'url(left.png)'});
});

</script>

<div id="leftmenupane" class="leftmenu_list">
  <p class="leftmenu_head">Header-1</p>
    <div class="leftmenu_body">
        <a href="#">Link-1</a>
        <a href="#">Link-2</a>
        <a href="#">Link-3</a>
        <a href="#">Link-4</a>
    </div>
  <p class="leftmenu_head">Header-2</p>
    <div class="leftmenu_body">
        <a href="#">Link-1</a>
        <a href="#">Link-2</a>
        <a href="#">Link-3</a>
    </div>
  <p class="leftmenu_head">Header-3</p>
    <div class="leftmenu_body">
        <a href="#">Link-1</a>
   </div>
</div>

它实际上是一些教程的示例表单。但我无法让它发挥作用。我在这里感觉到一些愚蠢的错误,但我无法找到它。所有我得到的是“$ j(this).css({'background-image':'url(down ....)。

在Firebug中的”遗失:属性ID后“错误

请帮忙。

4 个答案:

答案 0 :(得分:1)

尝试将冒号更改为逗号&amp;摆脱你的旋涡支架,如下:

$j(this).css('background-image', 'url(down.png)');
$j(this).siblings().css('background-image', 'url(left.png)');

答案 1 :(得分:0)

出于好奇,请尝试将$j = jQuery.noConflict();更改为j = jQuery.noConflict();

我只是这样说,因为当编译时变量不可用时,通常会出现错误。我想知道定义$ j几乎否定了没有冲突或其他什么。试试吧。

答案 2 :(得分:0)

我将代码更改为:

var $j = jQuery.noConflict();

$j(function() {

 $j("#leftmenupane p.leftmenu_head").click(function()
 {
  $j(this).css('background-image' , 'url(down.png)').next("div.leftmenu_body").slideToggle(300).siblings("div.leftmenu_body").slideUp("slow");
  $j(this).siblings().css( 'background-image' , 'url(left.png)');
 });

});

现在它正常工作。无论如何,谢谢你们,因为你把我推向了正确的方向:)

答案 3 :(得分:0)

这可能是语法错误。引用上面的代码行......

$j("#leftmenupane p.leftmenu_head").click(function(

看起来你没有在函数声明后关闭括号。试试这个......

$j("#leftmenupane p.leftmenu_head").click(function()