backbone.js 如何在jquery中将切换状态的初始可见性设置为true?

11dmarpk  于 2022-11-10  发布在  jQuery
关注(0)|答案(1)|浏览(128)

我有一个链接,当点击它时,它会切换另一个div元素的状态(隐藏或显示它)。我面临的问题是,在加载页面后,我需要两次点击才能将可见性设置为true。第一次点击时,它不会将可见性设置为true
我的HTML程式码:

<header class="dep_goals active">
  <a class="show_dep_goals">{href: 'javascript:void(0);', style: 
  'color: #f05831;'} Departments</a>
  <ul class="goal-type-selection"></ul>
</header>

我的 Backbone js事件:

DepartmentGoalsLayout.prototype.events = {
    'click .show_dep_goals': 'showDepGoals',   
  };

函数showDepGoals:

showBusinessGoals: (e) ->
    e.preventDefault()
    $(@el).find('.goal-business-type-selection').empty()
    @renderBusinesses()
    $(@el).find('.goal-business-type-selection').toggle()

如何在第一次点击时将goal-business-type-selection的可见性设置为true,然后在每次点击时继续在可见性的true和false状态之间交替?JavaScript新手!!

f87krz0w

f87krz0w1#

我添加了以下解决方案。似乎对我有效。
在html代码中:

<header class="dep_goals active">
    <a class="show_dep_goals">{href: 'javascript:void(0);', style: 
    'color: #f05831;'} Departments</a>
    <ul class="goal-type-selection hide"></ul>
  </header>

将隐藏类添加到ul元素
然后在showBusinessGoal函数中使用一个以hide为参数的切换类。

showBusinessGoals: (e) ->
    e.preventDefault()
    $(@el).find('.goal-business-type-selection').empty()
    @renderBusinesses()
    $(@el).find('.goal-business-type-selection').toggleClass('hide')

相关问题