Moh*_*ain 18 html javascript iphone ipad ios
我有两个绑定到锚标记的事件处理程序:一个用于焦点和模糊.
处理程序在桌面上启动,但在iphone和ipad中只有焦点被正确触发.如果我在锚标记外单击,则不会触发模糊(仅当我单击页面中的其他表单元素时模糊才会触发):
$("a").focus(function(){
console.log("focus fired");
});
$("a").blur(function(){
console.log("blur fired");
});
Run Code Online (Sandbox Code Playgroud)
HTML:
<html>
<form>
<a href="#">test link</a>
<div>
<input type="text" title="" size="38" value="" id="lname1" name="" class="text">
</div>
<div style="padding:100px">
<p>test content</p>
</div>
</form>
</html>
Run Code Online (Sandbox Code Playgroud)
如果锚点附加了任何事件,则在iOS中首次点击它会导致锚点进入悬停状态并进行聚焦.轻击即可移除悬停状态,但链接仍然保持聚焦状态.这是设计的.要在iOS上正确控制应用程序,您需要实现基于触摸的事件并对这些事件做出反应而不是桌面事件.
有一个完整的指南,使用Javascript事件WebKit的iOS上.