我正在尝试添加基本的更多/更少链接以切换元素可见性。
如何插入preventDefault
?
此外它只适用于第一次切换,之后它不会切换出来。有错误吗?
$("#description-link").click ->
$("#project-description").show()
$(this).text("Show description")
, ->
$("#project-description").hide()
$(this).text("Hide description")
答案 0 :(得分:2)
嗯,你可以尝试这样的事情:
$("#description-link").click (e) ->
e.preventDefault()
$('#project-description').toggle()
a = $(this).text()
a = if (a == 'Show Details') then 'Hide Details' else 'Show Details'
$(this).text(a)
显然click
和(e)
之间的空格是必需的。否则抛出TypeError。
编辑:刚刚意识到为什么需要这个空间......因为它是函数声明的一部分。以前没有真正搞过Coffeescript。 /捂脸
答案 1 :(得分:1)
要访问preventDefault(),您需要将event参数添加到您的函数中,并在其上调用preventDefault方法:
$("#description-link").click (event) ->
event.preventDefault()
....