define(function () {
    'use strict';

    /**
     * Save the userAgent.
     * @inner
     * @type {string}
     */
    var ua = navigator.userAgent;

    /**
     * Ios
     * @return {boolean}
     */
    function isIos() {
        return /iPhone|iPad|iPod/i.test(ua); 
    }

    /**
     * Safari
     * @return {boolean}
     */
    function isSafari() {
        return /Safari/i.test(ua) && !isChrome(); 
    }

    /**
     * Chrome
     * @return {boolean}
     */
    function isChrome() {
        return /Chrome|CriOS/i.test(ua);
    }

    /**
     * Uc
     * @return {boolean}
     */
    function isUc() {
        return /UCBrowser/i.test(ua);
    }

    /**
     * Webkit
     * @return {boolean}
     */
    function isWebkit() {
        return /WebKit/i.test(ua);
    }

    return {
        isIos:isIos,
        isSafari:isSafari,
        isChrome:isChrome,
        isUc: isUc,
        isWebkit: isWebkit,
        needSpecialScroll: isIos() && window != top
    }
});

@@ -780,24 +780,310 @@
 ua);%0A    %7D%0A%0A
+    /**%0A     * QQBrowser%0A     * @return %7Bboolean%7D%0A     */%0A    function isQQ() %7B%0A        return /QQBrowser/i.test(ua);%0A    %7D%0A%0A    /**%0A     * Get ios version%0A     * @return %7Bstring%7D%0A     */%0A    function getIosVersion() %7B%0A        return /iphone os (%5Cd)/i.test(ua) ? RegExp.$1 : 0;%0A    %7D%0A%0A%0A
     return %7B
@@ -1206,16 +1206,74 @@
 Webkit,%0A
+        isQQ: isQQ,%0A        getIosVersion: getIosVersion,%0A
         

Add QQBrowser & getIosVersion