我在if / else语句中使用了很多$("#foo").css("bar", "baz");
来将我的选项更改应用到我的应用程序(jQuery mobile)。我的问题是,有没有更短的方式来写这个?像$("#foo").css("bar", ((foobar == foobaz) ? "bazbaz" : "bazfoo"));
或者更好(性能)在DOM中删除/创建对象,同时在主页上实现jQuery mobile中的选项?
答案 0 :(得分:2)
jQuery的.hide()
和.show()
会优先于很多.css('display', ...)
。
辅助功能更清晰。它们基本上与您当前正在设置的display
做同样的事情,但它更具可读性。辅助函数的另一个好处是它们将保持原始显示值,而手动设置display
时,您需要知道显示它时原始显示的内容(例如块,内联)。
来自docs:
这大致相当于调用.css('display','block'),除了display属性恢复到最初的状态。如果元素的显示值为内联,则隐藏并显示,它将再次以内联方式显示。
或者,创建一个hidden
类,然后使用:
.addClass('hidden')
和.removeClass('hidden')
根据需要。