成功时显示消息不起作用

时间:2013-02-07 03:59:26

标签: javascript

我有一个用Javascript编写的简单的wishlist脚本,它将一个项目添加到心愿单中。该脚本将项成功添加到用户列表中,但我似乎无法显示成功消息。

我正在使用以下代码尝试显示成功消息。该脚本最初工作,然后突然停止工作。

function AddItem(ToDoItem) {
    if ((ToDoItem != null) && (ToDoItem != "undefined" )) {
        NumToDoItems++;
        SetCookie('PT_ToDoItem'+NumToDoItems, ToDoItem, exp);
        SetCookie('PT_NumToDoList',NumToDoItems, exp);
        $(window).humanMsg('Added '+ToDoItem+' to Wishlist');
    }
}

请您查看代码并提供一些建议吗?

更多信息:

我的HTML:

<div class="add-to-wishlist">
<a href="javascript:AddItem('<?php print htmlentities($title, ENT_QUOTES); ?>')">
<img class="add-to-wishlist" src="/images/add-to-wishlist-button.gif" border="0" /></a>
</div>

这是人类的Msg。 jQuery的插件

(function($, window){

$.fn.humanMsg = function( message, options ) {
    return this.each(function(){
        var container = this == window || this == document ? document.body : this;
        !$.data(container, 'humanMsg') && $.data(container, 'humanMsg', new     $.humanMsg (container, message, options) );
    });
};

$.humanMsg = function( container, message, options ) {
    if (typeof message == 'object') {
    options = message;
    message = null;
}

var s = $.extend({}, $.humanMsg.defaults, options);

var $m,
    sizeContainer = container == document.body ? window : container;

$m = $('<div class="humanized-message '+s.addClass+'"/>')
.html(message || s.message)
.click(remove)
.appendTo(container);

$m.css({
    display: 'none',
    visibility: 'visible',
    top: ($(sizeContainer).height()-$m.innerHeight())/2,
    left: ($(sizeContainer).width()-$m.innerWidth())/2
})
.fadeIn(s.speed);

s.autoHide && setTimeout(remove, s.autoHide);   

function remove() {
    $m.fadeOut(s.speed, function(){
        $m.remove();
        $.removeData(container, 'humanMsg');
    });
}

};

$.humanMsg.defaults = {
message: 'no message was set',
autoHide: 3000,
addClass: '',
speed: 300
};

})(jQuery, this);

查看错误控制台我有:

Uncaught TypeError: Property '$' of object [object Window] is not a function 
(anonymous function)
closing script tag manually 

1 个答案:

答案 0 :(得分:0)

错误表明jQuery尚未包含在脚本中。