我正在尝试在Javascript中创建一个逻辑开关。目的是创建一个Javascript函数,该函数可用于触发按钮单击并打开或关闭特定日历源。当您第一次单击按钮时,它应该加载日历源,当第二次单击相同的按钮时,应该关闭源,如果第三次点击它则打开。
这是到目前为止的代码:
function click1() {
if (times11 % 2 == 0 )
{$("#calendar").fullCalendar( 'addEventSource', {url: 'https://www.google.com/'});
times11++;
}
else
{$("#calendar").fullCalendar( 'removeEventSource', {url: 'https://www.google.com/'});
times11++;
}
}
由于某种原因,我无法确定它的增量为2。
Ps:var times11在上面使用var times11 = 0;
答案 0 :(得分:2)
var _switch = false;
function click1() {
if (!_switch )
{
$("#calendar").fullCalendar( 'addEventSource', {url: 'https://www.google.com/'});
_switch = true;
}
else
{
$("#calendar").fullCalendar( 'removeEventSource', {url: 'https://www.google.com/'});
_switch = false;
}
}
答案 1 :(得分:0)
你写的东西应该可以正常工作;请发布一个简化的示例,表明它无法提供进一步的帮助。请注意,您可以使用以下方法稍微简化/缩短代码:
// In general
function click1(){
if (++times11 % 2) ...
else ...;
}
// Specifically
function click1(){
$('#calendar').fullCalendar(
(++times11 % 2) ? 'addEventSource' : 'removeEventSource',
{ ... }
);
}
答案 2 :(得分:0)
也许你的问题与分号注射有关? 试试这段代码:
function click1() {
if (times11 % 2 == 0 ) {
$("#calendar").fullCalendar( 'addEventSource', {url: 'https://www.google.com/'});
times11++;
}
else {
$("#calendar").fullCalendar( 'removeEventSource', {url: 'https://www.google.com/'});
times11++;
}
}