作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在单击时更改按钮文本。
现在我有
# Script Loading Button
$(document).ready ->
$('.loop_button').click ->
$(this).html('<i class="fa fa-spinner fa-spin"></i> Uploading...');
因此,单击后,它会更改为 fa-spinner
图标和 正在上传...
文本。
如何插入 3 个或更多字符串以显示在按钮文本中。像这样的东西:
["Uploading...", "Still Uploading", "This file is HUGE"]
最佳答案
假设您有希望发生这种情况的时间间隔,则可以通过超时来实现。 setTimeout
函数将在指定的毫秒数后执行回调。因此,例如:
timeouts = []
$('.loop_button').click ->
button = $(this)
button.html('<i class="fa fa-spinner fa-spin"></i> Uploading...')
# switch label after 10 seconds...
timeouts.push setTimeout ( ->
button.html('<i class="fa fa-spinner fa-spin"></i> Still Uploading')
), 10000
# switch label again after 30 seconds...
timeouts.push setTimeout ( ->
button.html('<i class="fa fa-spinner fa-spin"></i> This File is HUGE')
), 30000
然后,当您的上传完成时,您应该停止任何待处理的超时:
clearTimeout timeout for timeout in timeouts
$(".loop_button").html("Start")
这是一个显示其实际效果的 fiddle :http://jsfiddle.net/gwcoffey/6JRfp/1/
关于javascript - 循环遍历不同的按钮文本.onClick,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23990933/
我是一名优秀的程序员,十分优秀!