jQuery函数GI错误

时间:2013-10-14 08:20:18

标签: javascript jquery jquery-plugins

我有一个jQuery函数,可以在桌面浏览器上正常运行,但在iPad或iPhone上引发错误。当我运行控制台找到错误时,我收到此消息。对不起,我没有给你们很多东西继续下去。如果您让我知道您在寻找什么,我可以提供更多信息。

编辑:我已禁用所有其他插件。请注意,此代码适用于计算机浏览器,但不适用于移动设备;特别是iPad和iPhone。

EDIT_2:我刚在页面中找到了此代码。似乎如果浏览器来自移动设备,它将不会加载一些插件。新问题,为什么我的主题会限制这些插件的加载?

var ismobile = (/iphone|ipad|ipod|android|blackberry|mini|windows\sce|palm/i.test(navigator.userAgent.toLowerCase()));
        if(!ismobile){

            /** ONLY EXECUTE THESE CODES IF MOBILE DETECTION IS FALSE **/

            /* REQUIRED: Datatable PDF/Excel output componant */

            document.write('<script src="js/include/ZeroClipboard.min.js"><\/script>');
            document.write('<script src="js/include/TableTools.min.js"><\/script>');
            document.write('<script src="js/include/select2.min.js"><\/script>');
            document.write('<script src="js/include/jquery.excanvas.min.js"><\/script>');
            document.write('<script src="js/include/jquery.placeholder.min.js"><\/script>');

TypeError: 'undefined' is not a function (evaluating '$(".themed select.with-search").select2()')

以下是它抱怨的代码:

$(document).ready(function(){
        setup_custom_form_elements();
    });

    function setup_custom_form_elements() {
            if ($('.themed').length) {
                $(".themed input[type='radio'], .themed input[type='checkbox'], .themed input[type='file'].file, .themed textarea").uniform();
                $(".themed select.with-search").select2();

                /* some demo buttons for select 2 */

                $("#disable-select-demo").click(function() {
                    $("#select-demo-js select").select2("disable");
                });

                $("#enable-select-demo").click(function() {
                    $("#select-demo-js select.with-search").select2();
                });

            }// end if
    }

1 个答案:

答案 0 :(得分:1)

以下是答案: 如上所述,我的主题是限制插件源文件的加载。愚蠢的错误,我应该注意到它。我从if(!mobile)语句中取出了Select2插件,现在一切正常。 谢谢你所有的帮助!