Javascript Can';t read<;h3>;用我的脚本上课

Javascript Can';t read<;h3>;用我的脚本上课,javascript,html,css,Javascript,Html,Css,我有个小问题。我似乎无法让脚本识别h3标签。我不能把它保持为h3,我必须给它添加一个类 标记: <h3 class="jjheader"> <?php echo $listitem->title ?> </h3> #accordion h3.jjheader { padding: 8px 8px 8px 8px; font-weight: bold; font-size: 12px; color: #66

我有个小问题。我似乎无法让脚本识别h3标签。我不能把它保持为
h3
,我必须给它添加一个类

标记:

<h3 class="jjheader">
    <?php echo $listitem->title ?>
</h3>
#accordion h3.jjheader { 
    padding: 8px 8px 8px 8px; 
    font-weight: bold; 
    font-size: 12px; 
    color: #666666;
    margin-top: 5px; 
    cursor: pointer; 
    border: 1px solid #444444;
    border-radius: 8px;
    background: #151515;
}
<script type="text/javascript">
     var parentAccordion=new TINY.accordion.slider('parentAccordion'); 
     parentAccordion.init('accordion','.jjheader',0,1,'accordion-selected');
</script>
如果我不在h3中添加一个类并在下面的脚本中将
.jjheader
替换为
h3
,它就可以正常工作,但是对于这个类,它不会

脚本:

<h3 class="jjheader">
    <?php echo $listitem->title ?>
</h3>
#accordion h3.jjheader { 
    padding: 8px 8px 8px 8px; 
    font-weight: bold; 
    font-size: 12px; 
    color: #666666;
    margin-top: 5px; 
    cursor: pointer; 
    border: 1px solid #444444;
    border-radius: 8px;
    background: #151515;
}
<script type="text/javascript">
     var parentAccordion=new TINY.accordion.slider('parentAccordion'); 
     parentAccordion.init('accordion','.jjheader',0,1,'accordion-selected');
</script>

var parentAccordion=新的微小的.accordion.slider('parentAccordion');
parentAccordion.init('accordion','.jjheader',0,1,'accordion-selected');
accordion基于来自的TinyAccordion JavaScript accordion包

有人能指出正确的方向吗?

如果您谈论的是脚本,那么在不修改代码的情况下,您不能在需要的地方使用类名。也就是说,按照当前的工作方式,“init”函数的第二个参数必须是标记名


这段代码并不漂亮,但很简单,因此以某种方式增强它以满足您的需要应该不会太难。

脚本从定义
t$$
开始,它只在
init
中使用。该函数在容器中按标记名查找元素。它可以很容易地修改为使用类选择器,例如:

function T$$(e,p){
    if(e[0] == '.') {
       var matches = p.getElementsByClassName(e.substring(1));
       return matches.length == 0 ? null : matches[0];
    } else {
       return p.getElementsByTagName(e);
    }
}
如果传递的搜索字符串的第一个字符是点,则上述代码使用
getElementsByClassName
,表示css类选择器;否则,它将按标记名返回一个元素,就像在原始源代码中一样

当然,您可以通过检查前导的
#
和执行
getElementById
来扩展此功能。如果您已经在站点上运行jQuery,可以简化它并使用jQuery的sizzle选择器:

function T$$(e,p) { return $(p).find(e); }

TINY.accordion.slider
到底做了什么?如果您使用某种plugin\framework,您应该提到它的名称,并在它的文档站点中添加一个链接。使用框架名称和站点更新address@gdoron-我想他在用微型手风琴@Derek。你删除了他的链接…@gdoron-这基本上是相同的链接,但他的原始链接是API的主页。谢谢,这段代码可以工作,但是当我点击手风琴上的每个面板时,它似乎删除了类。有什么办法绕过这件事吗?