Jquery Popup Box
Jestem nowym użytkownikiem JavaScript i Jquery. Wyszukałem w Internecie wyskakujące przykłady Jquery. Chcę, aby wiadomość mówiła: „Nasza strona nie jest jeszcze ukończona, ale nie krępuj się przeglądać tego, co mamy”. Dołączę znaleziony przykład kodu, ale wygląda to naprawdę dziwnie. Nie jestem pewien, jaka jest nazwa funkcji i jak ją wykonać za pomocą window.onload = function (); kod. Chcę też mieć przycisk „zamknij”, który zamyka pole tekstowe. Oto jak powinno wyglądać:http://demo.tutorialzine.com/2010/12/better-confirm-box-jquery-css3/
Oto pierwsza część:
(function($){
$.confirm = function(params){
if($('#confirmOverlay').length){
// A confirm is already shown on the page:
return false;
}
var buttonHTML = '';
$.each(params.buttons,function(name,obj){
// Generating the markup for the buttons:
buttonHTML += '<a href="#" class="button '+obj['class']+'">'+name+'<span></span></a>';
if(!obj.action){
obj.action = function(){};
}
});
var markup = [
'<div id="confirmOverlay">',
'<div id="confirmBox">',
'<h1>',params.title,'</h1>',
'<p>',params.message,'</p>',
'<div id="confirmButtons">',
buttonHTML,
'</div></div></div>'
].join('');
$(markup).hide().appendTo('body').fadeIn();
var buttons = $('#confirmBox .button'),
i = 0;
$.each(params.buttons,function(name,obj){
buttons.eq(i++).click(function(){
// Calling the action attribute when a
// click occurs, and hiding the confirm.
obj.action();
$.confirm.hide();
return false;
});
});
}
$.confirm.hide = function(){
$('#confirmOverlay').fadeOut(function(){
$(this).remove();
});
}
})(jQuery);
Oto druga część:
$(document).ready(function(){
$('.item .delete').click(function(){
var elem = $(this).closest('.item');
$.confirm({
'title' : 'Delete Confirmation',
'message' : 'You are about to delete this item. <br />It cannot be restored at a later time! Continue?',
'buttons' : {
'Yes' : {
'class' : 'blue',
'action': function(){
elem.slideUp();
}
},
'No' : {
'class' : 'gray',
'action': function(){} // Nothing to do in this case. You can as well omit the action property.
}
}
});
});
});
$(markup).hide().appendTo('body').fadeIn();
var buttons = $('#confirmBox .button'),
i = 0;
$.each(params.buttons,function(name,obj){
buttons.eq(i++).click(function(){
// Calling the action attribute when a
// click occurs, and hiding the confirm.
obj.action();
$.confirm.hide();
return false;
});
});
}
$.confirm.hide = function(){
$('#confirmOverlay').fadeOut(function(){
$(this).remove();
});
}
})(jQuery);
EDYCJA: Dostałem wiadomość, aby pokazać się podczas ładowania. Zmieniłem kod w drugiej części na
$ ('. item .delete'). ready (function () {