2013-12-06 1 views
0

мой код выглядит следующим образом:Почему кнопка ОК не отображается во всплывающем окне в следующем коде?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
    <link href="http://localhost/abc/pqr/web/css_new/style.css" rel="stylesheet" type="text/css" /> 
    <link href="http://localhost/abc/pqr/web/css_new/scroll.css" rel="stylesheet" type="text/css" /> 
    <link rel="stylesheet" href="http://localhost/abc/pqr/web/css/jquery_ui/ui.all.css" type="text/css" /> 

    <script type="text/javascript" src="http://localhost/abc/pqr/web/js/jquery-1.7.1.min.js"></script> 
    <script type="text/javascript" src="http://localhost/abc/pqr/web/js/jquery_ui/ui.core.js"></script> 
    <script type="text/javascript" src="http://localhost/abc/pqr/web/js/jquery_ui/ui.dialog.js"></script> 

    <script> 
     var timer; 
     var keys = {}; 

     $(document).ready(function() { 
     $(document).mouseleave(function() { 
      customAlert("Your mouse is away"); 
     }); 
     }); 

     $(document).keydown(function (e) { 
     keys[e.which] = true; 
     }); 

     $(document).keyup(function (e) { 
     delete keys[e.which]; 
     }); 

     if((keys[91] && keys[68]) || (keys[18] && keys[9]) || (keys[17] && keys[91] && keys[68])) { 
     customAlert("Your mouse is away"); 
     } 

     function customAlert(customText) { 
     $("#popUp").html(customText); 
     timer = setInterval(customAlert2, 5000); 

     $("#popUp").dialog({ 
      dialogClass: "no-close", 
      buttons: [{ 
         text: "OK", click: function() { 
         $(this).dialog("close"); 
         clearInterval(timer); 
         } 
        }] 
     }); 
     } 

     function customAlert2() { 
     location.reload(); 
     $("#popUp2").dialog({ 
     dialogClass: "no-close", 
     buttons: [{ 
        text: "OK", click: function() { 
        $(this).dialog("close"); 
        } 
       }] 
     }); 
     }  
    </script> 
    </head> 
    <body> 
    <h1>My first PHP program</h1> 
    <p>Hello World!</p> 
    <div id="popUp" title="First alert message"></div> 
    <div id="popUp2" title="Second alert message">Time is over</div> 
    </body> 
</html> 

Когда появится всплывающее кнопку Ok отсутствует. Он показывает только «О.Канг, ты поможешь мне в этом отношении, пожалуйста? Я также добавил скриншот всплывающего окна. Пожалуйста, взгляните на это, чтобы лучше понять мою проблему. enter image description here

+1

Ваш первый PHP программа не имеет PHP в нем! ха-ха. :) – keyboardSmasher

ответ

1

Документация jQuery UI описывает различный подход для определения кнопок.

Пример из официальной документации:

$("#dialog-confirm").dialog({ 
    resizable: false, 
    height:140, 
    modal: true, 
    buttons: { 
    "Delete all items": function() { 
     $(this).dialog("close"); 
    }, 
    Cancel: function() { 
     $(this).dialog("close"); 
    } 
    } 
}); 

http://jqueryui.com/dialog/#modal-confirmation

Таким образом, в вашем случае это должно выглядеть так:

$("#popUp").dialog({ 
     dialogClass: "no-close", 
     buttons: { 
      "OK": function() { 
       $(this).dialog("close"); 
       clearInterval(timer); 
      } 
     } 
}); 

$("#popUp2").dialog({ 
     dialogClass: "no-close", 
     buttons: { 
      "OK": function() { 
       $(this).dialog("close"); 
      } 
     } 
}); 
+0

Большое вам спасибо за помощь Марис. Но я имею дело с вышеуказанным кодом. Я не могу запустить событие Click на кнопке Ok, как я это делал. Вы не определили событие щелчка на кнопке Ok. Как достичь этой цели? – PHPLover

+0

@PHPLover анонимная функция сразу после названия кнопок - это тот, который запускается onClick. Вы должны воссоздать свою проблему на jsfiddle.net, чтобы мы могли протестировать ваш код и помочь его исправлению. –

0

Я попробовал ваш код на JS скрипкой и называется ваша функция mouseleave с настраиваемым предупреждением, которое вы там предоставили, и ее работой, т.е. когда я покидаю окно вывода, он показывает мне диалоговое окно с кнопкой «ОК».

Пожалуйста, найдите эту ссылку и напишите свой второй файл fx, возможно, мы сможем найти что-то там.

Пожалуйста, найдите jsFiddle ниже.

http://jsfiddle.net/LtQnT/352/

$(document).mouseleave(function() { 
      //$("#popUp").dialog("open"); 
      customAlert('Hi'); 
     });