首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >jQuery未捕获窗口:对象[object TypeError]的属性“”$“”不是函数

jQuery未捕获窗口:对象[object TypeError]的属性“”$“”不是函数
EN

Stack Overflow用户
提问于 2012-05-30 05:50:46
回答 5查看 155.4K关注 0票数 92

总之,我下载了一个预先捆绑的JS/CSS表单应用程序,我正尝试在Wordpress中使用它。我得到了以下代码:

代码语言:javascript
复制
$(document).ready(function () {


/*----------------------------------------------------------------------*/
/* Parse the data from an data-attribute of DOM Elements
/*----------------------------------------------------------------------*/


$.parseData = function (data, returnArray) {
    if (/^\[(.*)\]$/.test(data)) { //array
        data = data.substr(1, data.length - 2).split(',');
    }
    if (returnArray && !$.isArray(data) && data != null) {
        data = Array(data);
    }
    return data;
};

/*----------------------------------------------------------------------*/
/* Image Preloader
/* http://engineeredweb.com/blog/09/12/preloading-images-jquery-and-javascript
/*----------------------------------------------------------------------*/



// Arguments are image paths relative to the current page.
$.preload = function() {
    var cache = [],
        args_len = arguments.length;
    for (var i = args_len; i--;) {
        var cacheImage = document.createElement('img');
        cacheImage.src = arguments[i];
        cache.push(cacheImage);
    }
};


/*----------------------------------------------------------------------*/
/* fadeInSlide by revaxarts.com
/* Fades out a box and slide it up before it will get removed
/*----------------------------------------------------------------------*/


$.fn.fadeInSlide = function (speed, callback) {
    if ($.isFunction(speed)) callback = speed;
    if (!speed) speed = 200;
    if (!callback) callback = function () {};
    this.each(function () {

        var $this = $(this);
        $this.fadeTo(speed / 2, 1).slideDown(speed / 2, function () {
            callback();
        });
    });
    return this;
};


/*----------------------------------------------------------------------*/
/* fadeOutSlide by revaxarts.com
/* Fades out a box and slide it up before it will get removed
/*----------------------------------------------------------------------*/


$.fn.fadeOutSlide = function (speed, callback) {
    if ($.isFunction(speed)) callback = speed;
    if (!speed) speed = 200;
    if (!callback) callback = function () {};
    this.each(function () {

        var $this = $(this);
        $this.fadeTo(speed / 2, 0).slideUp(speed / 2, function () {
            $this.remove();
            callback();
        });
    });
    return this;
};

/*----------------------------------------------------------------------*/
/* textFadeOut by revaxarts.com
/* Fades out a box and slide it up before it will get removed
/*----------------------------------------------------------------------*/


$.fn.textFadeOut = function (text, delay, callback) {
    if (!text) return false;
    if ($.isFunction(delay)) callback = delay;
    if (!delay) delay = 2000;
    if (!callback) callback = function () {};
    this.each(function () {

        var $this = $(this);
        $this.stop().text(text).show().delay(delay).fadeOut(1000,function(){
            $this.text('').show();
            callback();
        })
    });
    return this;
};

/*----------------------------------------------------------------------*/
/* leadingZero by revaxarts.com
/* adds a leding zero if necessary
/*----------------------------------------------------------------------*/


$.leadingZero = function (value) {
    value = parseInt(value, 10);
    if(!isNaN(value)) {
        (value < 10) ? value = '0' + value : value;
    }
    return value;
};


});

我假设Wordpress没有冲突导致问题,所以我更新了最后一个括号,如下所示:

代码语言:javascript
复制
}, "jQuery");

但是,我仍然收到相同的错误。有没有人知道什么会引发这个问题,以及如何解决它?

提前感谢!

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-05-30 05:53:42

这是一个语法问题,WordPress附带的jQuery库在“无冲突”模式下加载。这是为了防止与WordPress可以加载的其他javascript库的兼容性问题。在“无混淆”模式下,$快捷方式不可用,并且使用jQuery的时间越长,即

代码语言:javascript
复制
jQuery(document).ready(function ($) {

通过在函数调用后加上$括号,您可以在代码块中使用此快捷方式。

有关详细信息,请参阅WordPress Codex

票数 260
EN

Stack Overflow用户

发布于 2012-05-30 05:53:02

我最喜欢的无冲突友好结构:

代码语言:javascript
复制
jQuery(function($) {
  // ...
});

使用函数指针调用jQuery是$(document).ready(...)的快捷方式

或者正如我们在coffeescript中所说:

代码语言:javascript
复制
jQuery ($) ->
  # code here
票数 35
EN

Stack Overflow用户

发布于 2013-01-30 14:58:24

在Wordpress中只需替换

代码语言:javascript
复制
$(function(){...});

使用

代码语言:javascript
复制
jQuery(function(){...});
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10807200

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档