在jquery事件中引用javascript对象
我有这个密码在jquery事件中引用javascript对象,javascript,jquery,Javascript,Jquery,我有这个密码 var NotificationsBox={ HideNotificationBox:function() { document.getElementById("NotificationBox").style.visibility="hidden"; }, toggleNotificationBox:function() { $('#NotificationBox').toggle();
var NotificationsBox={
HideNotificationBox:function()
{
document.getElementById("NotificationBox").style.visibility="hidden";
},
toggleNotificationBox:function()
{
$('#NotificationBox').toggle();
},
SetContainerClick_NotificationHide_Event:function()
{
$('#Container').click(this.HideNotificationBox);
},
SetNotificationBoxClick_NotificationToggleEvent:function()
{
$('#ShowNotification').click(function(){
$(this).html("0");
$(this).css("background-color","#000");
this.toggleNotificationBox(); /// <-- PROBLEM
});
}
};
NotifyBox=Object.create(NotificationsBox);
NotifyBox.HideNotificationBox();
NotifyBox.SetContainerClick_NotificationHide_Event();
NotifyBox.SetNotificationBoxClick_NotificationToggleEvent();
var通知框={
HideNotificationBox:函数()
{
document.getElementById(“NotificationBox”).style.visibility=“hidden”;
},
toggleNotificationBox:函数()
{
$(“#NotificationBox”).toggle();
},
SetContainerClick_NotificationHide_事件:函数()
{
$(“#容器”)。单击(此.HideNotificationBox);
},
SetNotificationBoxClick_NotificationToggleEvent:函数()
{
$('#ShowNotification')。单击(函数(){
$(this.html(“0”);
$(this.css(“背景色”,“#000”);
this.toggleNotificationBox();///p>在绑定单击之前保存对此的引用,并在单击事件处理程序中使用此引用而不是此:
SetNotificationBoxClick_NotificationToggleEvent:function()
{
var self = this;
$('#ShowNotification').click(function(){
$(this).html("0");
$(this).css("background-color","#000");
self.toggleNotificationBox(); // <-- self will refer to NotificationsBox
});
}
我想我们会坚持第一个选项Thnx。@Mj1992:是的,这实际上是用JavaScript实现的。不客气!
SetNotificationBoxClick_NotificationToggleEvent:function()
{
$('#ShowNotification').click(function(){
$(this).html("0");
$(this).css("background-color","#000");
NotificationsBox.toggleNotificationBox();
});
}