我有一个用 Javascript 编写的简单愿望清单脚本,可将项目添加到愿望清单中。该脚本成功地将项目添加到用户列表中,但我似乎无法显示成功消息。
我正在使用下面的代码来尝试显示成功消息。该脚本最初工作,然后突然停止工作。
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>
这是humanMsg。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