在我的项目中,我正在使用Vertical-Accordion-Menu-Plugin-For-jQuery-Nav-Accordion,它允许我使父链接可点击。我对jQuery做了一些小改动,使键盘可以访问。除了一件小事之外,一切看起来都不错。当我展开所有级别然后关闭父级容器时,子级别项目不再显示展开/折叠按钮。由于某些原因,它打破了。 https://jsfiddle.net/webIra7/mvtf6zve/
Sub FindIE() 'Needs reference to "Microsoft Shell Controls And Automation" from VBA->Tools->References
Dim sh
Dim eachIE
Dim SearchUntil
SearchUntil = Now() + 20 / 24 / 60 / 60 'Allow to search for 20 seconds otherwise it interrupts search
Do
Set sh = New Shell32.Shell
For Each eachIE In sh.Windows
If InStr(1, eachIE.LocationURL, ServerAddress) Then
Set appIE = eachIE
'IE.Visible = False 'This is here because in some environments, the new process defaults to Visible.
'Exit Do
End If
Next eachIE
If TypeName(appIE) <> "Object" Then
If InStr(1, appIE.LocationURL, ServerAddress) > 0 Or SearchUntil < Now() Then Exit Do
End If
Loop
Set eachIE = Nothing
Set sh = Nothing
End Sub
答案 0 :(得分:0)
错误与下面的行没有找到'.accordion-collapsed'元素有关,因为搜索parent(),它假设一个特定的dom结构。 使用.closest()更灵活。 解决这个问题的一种方法是替换
.parent().find('.accordion-collapsed').css('display', 'inline-block');
带
.closest('ul').find('.accordion-collapsed').css('display', 'inline-block');
行取自本节:
$(element).closest(settings.childElement).find('.accordion-active')
.removeClass('accordion-active')
.next(settings.childElement)
.slideUp(settings.slideSpeed).prev()
.find('.accordion-expanded')
.css('display', 'none')
.parent().find('.accordion-collapsed')
.css('display', 'inline-block');
答案 1 :(得分:0)
我能够解决此问题,我只需要从JavaScript中删除额外的标记。
@Html.HiddenFor(model => model.Customer.Property1) ...etc...
我更新了我的js小提琴https://jsfiddle.net/webIra7/mvtf6zve/5/