我有一个函数,当被调用时会加载一个外部的css文件。该文件为视障人士提供了高对比度的网站版本。点击图像按钮后,我可以调用此函数。点击一个功能按钮再次点击另一个
现在我需要的是能够重新加载页面时,再次单击相同的按钮。此重新加载有效地删除了包含的CSS,并返回该网站看起来正常。
我一直无法找到任何代码,允许我单击一次图像按钮来调用一个函数,然后再次单击同一图像按钮来执行另一个操作。
我曾试图问过这个问题,但被告知我没有问过问题。我希望上述内容很明确,请询问是否需要进一步澄清。
我有一个函数,当被调用时会加载一个外部的css文件。该文件为视障人士提供了高对比度的网站版本。点击图像按钮后,我可以调用此函数。点击一个功能按钮再次点击另一个
现在我需要的是能够重新加载页面时,再次单击相同的按钮。此重新加载有效地删除了包含的CSS,并返回该网站看起来正常。
我一直无法找到任何代码,允许我单击一次图像按钮来调用一个函数,然后再次单击同一图像按钮来执行另一个操作。
我曾试图问过这个问题,但被告知我没有问过问题。我希望上述内容很明确,请询问是否需要进一步澄清。
您可以设置一个全局变量:
jQuery(document).ready(function() {
$('#test').click(function() {
test();
});
});
var calledonetime = false;
function test()
{
if(calledonetime=== false)
{
calledonetime = true;
alert('first time');
}else
{
alert('second time');
}
}
所以,第一次点击,它会做的第一个动作,然后,第二。
这里是exemple。
我认为你可以做一些这样的事情。
<img src= "..." onclick ="Mymethod();" alt="Imagename"/>
var IsCalledOnce = false;
function Mymethod()
{
if(IsCalledOnce)
{
//do something
}else
{
//do something
}
IsCalledOnce = true;
}
如果第一次没有刷新,并且在所有其他时间刷新,则可以将该值保存在全局变量作用域中。
,如果你想坚持thatvalue更长 你可以使用任何的下列
2.Cookie
3.Hiddenfield
4.Database (通过阿贾克斯调用保存)
我做了这个我自己:
function zo(f1, f2){
this.n = 0;
this.z = function(){
if(this.n === 0){
f1(); this.n = 1;
}
else{
f2(); this.n = 0;
}
}
}
var whatever = new zo(function(){/*do stuff*/}, function(){/*do stuff*/});
记住的this
情况下,你会想在whatever
上下文来调用事件里面。
Element.onclick = function(){
whatever.z.call(whatever);
}
<button id="button">click me</button>
<div id="thing">default</div>
和
function first() {
$('#thing').html("first");
}
function second() {
$('#thing').html("second");
}
$('#button').on("click", function() {
first();
$(this).on("click", function() {
second();
});
});
http://jsfiddle.net/stevemarvell/xxJBH/
如果你想记住用户重装后,那么你希望将其存储在cookie或一些这样的状态。
您可以创建一个全局变量$.clicked
并存储true当首先点击并加载CSS。
在你的函数中,你总是检查全局变量的值,然后定义从那里执行的操作。
看到:
$(document).ready(function(){
$.clicked = false;
$("#loadCSS").click(function(e){
if ($.clicked){
// action to be taken to remove the CSS loaded
$.clicked = false;
} else {
// action to be taken to load the CSS
$.clicked = true;
}
});
});
我希望它可以帮助你
在HTML
<a><img id="test" src="temp5.jpg" /></a>
尝试这个
在.js文件
$(document).ready(function()
{
var action = 1;
$("#test").click(function()
{
if (action == 1) {
$("#div2").css('display','block');
action = 2;
} else {
$("#div3").css('display','block');
action = 1;
}
});
});
更改点击处理程序中的点击处理程序? – stevemarvell
重新加载后是否发生第二次点击....即按钮点击会导致重新加载? –
应该没有重新加载 – stevemarvell