[英]How can I write this function without using a modulo?
我想知道是否还有另一种无需使用模数即可编写此函数的方法。 我意识到我还有另一段代码,要求我单击#mail-wrap按钮,这样做会使影响此功能的单击次数混乱。
这只是一个简单的开关。 我对条件句不太满意。
$('#mail-wrap').click(function (e) {
e.preventDefault();
var c = 0;
if (c++ % 2 == 0) {
$('#contact-button').addClass('project-button').text('Projects');
} else {
$('#contact-button').removeClass('project-button').text('Get in touch');
}
});
编辑:改变了一点问题。 抱歉,最后一个范围太广。
正如Boldewyn所述,您最有可能遇到的问题是正在定义全局变量c
。 但是,如果您想完全避免使用此变量,则可以通过jQuery hasClass
函数检查contact-button
的CSS类,即
$('#mail-wrap').click(function (e) {
...
var contactButton = $('#contact-button');
if (!contactButton.hasClass('project-button')) {
$('#contact-button').addClass('project-button').css('width', '71px').text('Projects');
...
} else {
$('#contact-button').removeClass('project-button').css('width', '96px').text('Get in touch');
...
}
});
该代码正在干扰其他代码,因为您已隐式生成了全局变量c
。 可能的解决方法:使用IIFE :
(function() {
var c = 0;
/* rest of your code above ... */
})();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.