如何捕获未捕获的类型错误

时间:2014-10-10 17:56:07

标签: javascript jquery

我的jQuery有以下开头:

(function($) {
    $.widget('ui.hbTags', {
        options: {
            availableTags: [],
            node: false,
            tagList: false,
            existingTags: false,
            placeholder: false,
            ajaxUrl: false,
            existingUrl: false,
            csrftoken: false
        },

但是,我在第2行得到uncaught typeerror undefined is not a function。我知道这是因为ui.hbTags不是每个页面上的元素,但如何防止出现此问题?

2 个答案:

答案 0 :(得分:0)

我会在调用小部件之前检查标签是否在页面上。

(function($) {
    if($('ui.hbTags').length > 0) {
        $.widget('ui.hbTags', {
            options: {
                availableTags: [],
                node: false,
                tagList: false,
                existingTags: false,
                placeholder: false,
                ajaxUrl: false,
                existingUrl: false,
                csrftoken: false
          },

答案 1 :(得分:0)

如果(typeof $(el)不等于' undefined') 在代码

之前使用此psedo代码