Tyl*_*ler 13 jquery loops coffeescript
我正在尝试以编程方式创建一些javascript按钮来切换页面上的可见性(用于snappy标记过滤).这适用于一个标签:
trigger = ".sales-focus-btn"
target = ".sales-focus"
jQuery ->
$(trigger).toggle ->
$("#primary-content").find('.container').hide()
$("#primary-content").find(target).show()
, ->
$("#primary-content").find('.container').show()
Run Code Online (Sandbox Code Playgroud)
是否有可能在coffeescript中做类似的事情,但是使用数组,例如
trigger = [
".sales-focus-btn"
".service-focus-btn"
".other-focus-btn"
...
]
target = [
...
]
Run Code Online (Sandbox Code Playgroud)
是否可以循环并为每种类型的标签创建一个切换?
UPDATE
是的,这是可能的.使用表格:
myFunction = (el) -> console.log el
myFunction elem for elem in array
Run Code Online (Sandbox Code Playgroud)
Ric*_*asi 24
当然有可能:
content = $('#primary-content')
container = content.find('.container')
tags = [
'.sales-focus'
'.service-focus'
'.other-focus'
]
$.each tags, (tag) ->
target = content.find(tag)
$(tag + "-btn").toggle ->
container.hide()
target.show()
, ->
container.show()
Run Code Online (Sandbox Code Playgroud)
记得缓存DOM元素.或者使用for tag in tags而不是jQuery.each tags, (tag) -> ...:
for tag in tags
do ->
target = content.find(tag)
$(tag + "-btn").toggle ->
container.hide()
target.show()
, ->
container.show()
Run Code Online (Sandbox Code Playgroud)
(正如@epidemian指出的那样,do ->IIFE必须保持每个target范围)
| 归档时间: |
|
| 查看次数: |
28837 次 |
| 最近记录: |