JQuery Alert Box - PullRequest
       1

JQuery Alert Box

2 голосов
/ 14 июля 2010

Есть ли хороший способ установить оповещение с помощью jQuery?

У меня есть PDF-файл, с которым мои посетители должны согласиться, прежде чем продолжить ...

Итак: пользователь нажимает PDFоткрывается окно оповещения: «Вы должны согласиться с нашим заявлением, прежде чем мы предоставим вам этот PDF» Кнопка «Я согласен» (загрузка в PDF продолжается) / Кнопка «Я не согласен» (окно закрывается и отображается оригинальная страница)

Это лучшееспособ справиться с этим?

Должен ли я использовать диалоговое окно?

Ответы [ 4 ]

4 голосов
/ 14 июля 2010

Я бы предложил использовать диалог модального подтверждения. Он также смешивает фон, делая диалог более заметным.

Документация находится под http://jqueryui.com/demos/dialog/#modal-confirmation

0 голосов
/ 30 октября 2012

Если вы хотите использовать Jquery Alert / Confirm / Prompt Box , проверьте этот пример .

Или даже лучше. Вы должны использовать всплывающее окно из jquery. Это выглядит блекло с некоторыми CSS.

$('#errorBtn').click(function(e) {
    if (acceptCondition()=='on'){
        // Prevents the default action to be triggered. 
        e.preventDefault();                
        // Triggering bPopup when click event is fired
        $('#popup').bPopup({
            opacity: 0.6,
            zIndex: 200,
            modalClose: false,
            positionStyle: 'fixed'
        });

Вы также должны включить jquery.bpopup-0.7.0.min.js :)
Вы можете узнать больше здесь на dinbror.dk

0 голосов
/ 09 июля 2012

Я обнаружил, что после ОЧЕНЬ большого беспорядка лучший способ - это простой способ эмулировать нативное оповещение javascript с помощью диалогового интерфейса, который я сделал сам (кстати, я сам написал, потому что на нём много полезного эта тема и множество людей, насмехающихся об использовании плагинов, делают многоэтапное «это» или раздражающее «это» ZZZzzz ...):

Примечание: вы не можете сделать эквивалент функции verify () - без fass, но вы можете использовать html rich rich alerts и добавлять события для этого rich html самостоятельно в конце вызова jQueryAlery () .

работает нормально и включает дополнительную отладку для «просмотра» html или «url» в случае последнего

function JQueryAlert(message,windowHeight){
    /****
     *  equivalent to javascript 'alert'
     */
    if (!windowHeight) var windowHeight = 470;

    $("#msgdialog").remove();

    $("body").append("<div id='msgdialog'></div>"); 

    thatmsg = $("#msgdialog");

    $("#msgdialog").dialog({
        resizable: false,
        draggable: false,
        width: 770,
        height: windowHeight,
        context: thatmsg,
        modal: true,
        autoOpen: false,
        buttons: {
            "Cancel" : function (){
                thatmsg.dialog("close");
            }/*,
            "View Source" : function (){
                alert($('<div>').append($(this).clone()).html());
            }*/
        }
    });     

    $("#msgdialog").html(message);
    $("#msgdialog").dialog('open');     
}

то же, что и выше, за исключением того, что он идет и получает контент из URL

  function JQueryHTML(url,windowHeight){
    /****
     *  equivalent to javascript 'alert' but gets a url
     */

    if (!windowHeight) var windowHeight = 470;

    $("#dialog").remove();

    $("body").append("<div id='dialog'></div>"); 

    that = $("#dialog");

    $("#dialog").dialog({
        resizable: false,
        draggable: false,
        width: 770,
        height: windowHeight,
        context: that,
        modal: true,
        autoOpen: false,
        buttons: {
            "Cancel" : function (){
                that.dialog("close");
            }/*,
            "View Source" : function (){
                alert($('<div>').append($(this).clone()).html());
            },
            "View Url" : function (){
                alert(url);
            }*/
        }
    });     

    $.get(url, function(data) {
        $("#dialog").html(data);
        $("#dialog").dialog('open');
    });
}

редактировать:

Я использую его со следующим PHP, чтобы получить отличный эффект

   if ($_SESSION['alert_message']){
        echo "<script>\n";
        echo " $(function() { \n";
        echo "   JQueryMessage('".str_replace("'","\'",$_SESSION['alert_message'])."'); \n";
        echo " }); \n";
        echo "</script>\n";
        unset($_SESSION['alert_message']);
    }
0 голосов
/ 07 мая 2012

Вы можете использовать мой плагин с именем jquery.msgBox ().Это бесплатно.

http://jquerymsgbox.ibrahimkalyoncu.com/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...