iPad Safari web 应用 与 IE下面对比

    技术2024-06-28  68

    1. 基本上与Safari PC一致。除了其完全不能响应onmouseout,网上很多说不能响应onmouseover,但我尝试之下是可以相应的,基本上跟onclick一致。但是onmouseout完全不能。

    2. document.layer 不可用

    3. 函数调用大小写敏感

    4. 没有:hover状态,不过可以通过iphone的ontouchstart和ontouchend两个独有的事件来模拟触屏特效。(在这里我们认为悬停动作就是手一直按着)

    5. 不同的方向使用不同的样式

     <link rel="stylesheet" media="all and (min-device-width: 481px) and (max-device-width: 1024px) and (orientation:portrait)" href="ipad-portrait.css"><link rel="stylesheet" media="all and (min-device-width: 481px) and (max-device-width: 1024px) and (orientation:landscape)" href="ipad-landscape.css">

    6. navigator.userAgent 获取浏览器信息。例如,

        if(navigator.userAgent.indexOf('iPad') > -1){...}

     

    7. 通过元素的style属性来修改visibility属性,元素本身不支持visibility

    8. safari的js不支持直接通过父元素对象"."子元素的id来获取子元素, 但是,可以通过Frame的Name然后点控件id来得到控件对象。

    9. 在asp中Request.ServerVariables("HTTP_USER_AGENT")可以得到浏览器的userAgent字符串,从而判断客户端浏览器类型,instr可以用来解析字符串,功能类似java的Strng.indexof方法。传入两个参数,第一个是被查找的字符串,第二个是要 查找的字符串,返回第一个满足的条件index,找不到返回0

    10. 使用XPathEvaluator对象去替换ActiveXObject("Microsoft.XMLDom")对象.

    11. 如果一个窗口不是js创建的则不支持window.close();可以通过以下方式绕过此安全限制,

    top.window.opener = null;top.window.open('','_self',''); top.window.close();

     

    12. window.open('','mainwindows','fullscreen')在safari下不能打开全屏,但是ipad浏览本身就是全屏的,所以问题不大

    13. 对于向Select元素赋值,如果该值不匹配任何option子元素的value,那么在IE下select元素的value为空,而Safari下select元素的value为以前值

    14. 不支持Frame的滚动条,DIV可以响应滚动条事件,但是Frame不能。不支持<Object>, <embed>的滚动条。

    最新回复(0)