我的切换有问题。我发现过类似的帖子,但没有一个是我真正理解的。
我希望按钮在单击时将文本更改为“项目信息 -”,并在再次单击时恢复回“项目信息 +”
这是问题(项目信息按钮)-> http://marcuspedersen.com/oyafestivalen.html
代码:
jquery
$('#toggle').click(function() {
$('#workinfo').slideToggle (300, 'linear');
});
按钮
<input type="button" id="toggle" value="Project Info +"/>
最佳答案
我建议:
$('#toggle').click(function(e){
// you may also want:
// e.preventDefault();
// depending what else you're doing, and how you're doing it
$(this).val(function(i,v){ return v == 'Project Info +' ? 'Project Info -' : 'Project Info +'; });
});
顺便说一句,如果您对同一个元素/jQuery 对象执行多个操作,那么明智的做法是缓存该对象,然后将缓存的对象用于将来的操作。
请记住,我在这里使用了 click()
,而不是 toggle()
,因为后者从 jQuery 1.9 开始已被弃用。
引用文献:
关于javascript - 更改按钮的文本值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14480160/