0

我对 jquery 有点陌生,所以对如何选择父选项卡或只是在当前手风琴上添加效果感到困惑。我在 php 条件下的脚本中编写的任何代码都不会对 .ui-widget-header 的 css 进行任何可见的更改,这很可能是因为我没有选择父元素本身。

让我给出我的代码的必要片段

<div id="tabs">
<ul>
    <li><a href="#tabs-1">Tab 1</a></li>
    <li><a href="#tabs-2">Tab 2</a></li>
    <li><a href="#tabs-3">Tab 3</a></li>
</ul>
<div id="tabs-1">
    <div id="accordion">

       <div> Some content </div>
       <div> 
           <?php  
           //Perform some query
           if (mysqli_num_rows($query)==0)
           //Make background of current accordion, and parent tab red. Add jquery script here
           echo "<script type='text/javascript'> </script>";//No clue what should be within this script, hence blank...
//Probably something like  $("accordion").parent("#tabs").css( background-color: red;background-image: none;)
//OR $(this).parents('div#tabs').css( background-color: red;background-image: none;)
           ?> 
       </div>
       <div>
          2nd accordion. There should be no effect here. 
       </div>
   </div>
   .....

jsfiddle.net/buKLE/8 上提供了一个经过修改的剪辑...目前只有标签和手风琴。如果可能,尝试只更改 tab1 的 css,假设手风琴第 2 节有错误。是否有可能仅更改该手风琴的颜色,因为所有手风琴都绑定在一起...

4

1 回答 1

1

您非常接近,您的代码中有两个小错误。

您错过了井号,并采用了错误的遍历方法:

               ↓ only traverses one level up
$("accordion").parent("#tabs")

应该:

   ↓ hash       ↓ traverses upwards, until the selector matches or top is reached
$("#accordion").parents("#tabs")
于 2013-02-18T10:22:55.147 回答