jQuery导致iPhone上的页面重新加载

时间:2013-04-30 15:24:26

标签: jquery html css

我正在使用这段jQuery在第一次访问时向用户显示一条消息,并点击“信息”按钮。

$(document).ready(function()
{
if(!localStorage.newVisitor) {
    localStorage.newVisitor="true";
    $('#popUp').fadeIn(300);
}

$('#popUp').click(function(){
    $('#popUp').fadeOut(300);
});

$('#info').click(function(){
    $('#popUp').fadeIn(300);
    }
);
});

html本质上是:

<div id="popUp">Hello</div>
<a id="info">Info</a>

CSS:

#popUp {
    display: none;
}

这在safari中都是笨拙的,但是当我将其转移到iPhone进行测试时,每次点击“信息”按钮时,弹出窗口会显示,但随后页面会立即刷新,然后将消息重置为它隐藏的状态。

任何想法,为什么这是谁?

谢谢!

2 个答案:

答案 0 :(得分:3)

试试这个:

$('#info').click(function(e){
    e.preventDefault();
    $('#popUp').fadeIn(300);        
});

顺便说一句,您的<a>代码应该有href属性:

<a id="info" href="#">Info</a>

答案 1 :(得分:2)

替换你:

<a id="info">Info</a>

对此:

<span id="info">Info</span>

CSS:

#info{cursor:pointer;}

由于您针对的是点击id而不需要<a>,因为<a>标记具有某些行为,例如要跳转到某个点页面或移动到另一页。