0

我正在使用这段 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 中都是 hunky dory,但是当我将其传输到 iPhone 进行测试时,每次点击“信息”按钮时,都会显示弹出窗口,但随后页面会立即刷新,因此消息会重置为隐藏状态。

任何想法为什么会这样?

谢谢!

4

2 回答 2

3

尝试这个:

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

顺便说一句,你的<a>标签应该有一个href属性:

<a id="info" href="#">Info</a>
于 2013-04-30T15:28:37.833 回答
2

替换你这个:

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

对此:

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

CSS:

#info{cursor:pointer;}

因为您的目标是id点击您不需要的<a>,因为<a>标签具有它想要执行的某些行为,例如跳转到页面上的某个点或移动到另一个页面。

于 2013-04-30T15:27:58.490 回答