我正在设置菜单中包含大量内容的下拉菜单,我想在鼠标输入时使用ajax get调用加载所有内容。
这是coffeescript:
class @SecondaryMenu
constructor: ->
@element = $('.nav-list li')
@mainNav = $('.nav-list')
@secondaryNav = $('.nav-secondary')
@bindEvents()
bindEvents: ->
@element.on 'mouseenter', (event) =>
@openSecondaryMenu()
@element.on 'mouseleave', (event) =>
@closeSecondaryMenu()
@secondaryNav.on 'mouseleave', (event) =>
@closeSecondaryMenu()
openSecondaryMenu: ->
setTimeout =>
@secondaryNav.stop(true).slideDown 200 if @hoveringMenu()
, 300
我想为第一个“鼠标输入”执行我的ajax调用:当加载内容时,我不需要另一个ajax调用,因为内容已经加载。
我不需要ajax调用,每次我将鼠标悬停在菜单上时,我都需要一个避免通话的解决方案!
答案 0 :(得分:0)
要广泛回答您的问题,在致电ajax
pre-existing values
当然你可以使用.length
来处理这个问题吗?
class @SecondaryMenu
constructor: ->
@element = $('.nav-list li')
@mainNav = $('.nav-list')
@secondaryNav = $('.nav-secondary')
@bindEvents()
bindEvents: ->
@element.on 'mouseenter', (event) =>
@openSecondaryMenu() if @mainNav.find("option").length < 1
@element.on 'mouseleave', (event) =>
@closeSecondaryMenu()
@secondaryNav.on 'mouseleave', (event) =>
@closeSecondaryMenu()