Javascript 使用jqueryaccordion编辑页面的其他元素-active&;违约
我有这个基本的手风琴Javascript 使用jqueryaccordion编辑页面的其他元素-active&;违约,javascript,jquery,html,accordion,jquery-ui-accordion,Javascript,Jquery,Html,Accordion,Jquery Ui Accordion,我有这个基本的手风琴 $('#accordion').accordion({ collapsible: true, active: false, heightStyle: "content", }); 当手风琴打开(状态:活动)和关闭(状态:默认)时,我想影响页面上的其他元素(h3、p等)(特别是手风琴下面的元素) 我已经知道如何在状态改变时编辑手风琴的标题和内容本身,但我不知道如何影响页面上不属于手风琴的外部元素。我该怎么做 HTML基本样式重复三次: <
$('#accordion').accordion({
collapsible: true,
active: false,
heightStyle: "content",
});
当手风琴打开(状态:活动)和关闭(状态:默认)时,我想影响页面上的其他元素(h3、p等)(特别是手风琴下面的元素)
我已经知道如何在状态改变时编辑手风琴的标题和内容本身,但我不知道如何影响页面上不属于手风琴的外部元素。我该怎么做
HTML基本样式重复三次:
<div>
<h3>Heading</h3>
<p>Blah Blah Blah</p>
</div>
标题
废话废话
我相信这就是你想要的:
测试
$('#accordion').accordion({
collapsible: true,
active: false,
heightStyle: "content",
activate: function( event, ui ) {
console.log(ui.newHeader.prop("id"));
}
});
注意:当前,如果您打开另一个标头,它将输出打开的标头的id,但是如果您关闭打开的标头,它将返回未定义的,可用于将来的检查。。有关更多信息,请单击
看看这个..你能给我们举个更清楚的例子吗,比如提供HTML结构等等..嘿,我试过这个方法,但是没有改变。我把$('skills').css('background','blue');检查它是否会改变这个div,但它没有。它起作用了!但是它有一个bug——当我关闭open头时,它只是再次执行activate中的函数。我已经尝试从代码中删除active:false,但没有效果。这不是一个bug,在。。这就是为什么我告诉你如果你不想做任何事情,如果你选择了相同的标题,那么使用if(ui.newHeader.prop(“id”)!=undefined)
作为你的条件。好的,我知道了。我很抱歉没有意识到!有没有什么捷径可以将我在if语句中所做的任何更改还原为默认值?我不这么认为,我想您必须手动还原所有内容。。顺便说一句,试着自己修改一下,如果有问题,然后再提出一个新问题。。我想我已经回答了你的主要问题^^