2013-11-08 3 views
0

Итак, у меня есть модальный, который открывается при нажатии на значок пользовательского интерфейса, и по какой-то причине модальный не будет закрываться ни в одном браузере, кроме IE. Есть ли более простой способ сделать это? Или любую спецификацию браузера, которую я могу добавить?Javascript modal close issues

Вот мой код:

<!-- Click function for modal --> 
$(ui).click(function modal() { 
    el = document.getElementById("modal"); 
    el.style.visibility = (el.style.visibility == "visible")?"hidden":"visible"; 
}); 


<div id="modal" class="modal" draggable="true"> 
<div> 
<h3 style="text-decoration: underline"> Summary Report Table </h3> 
    <table id="summary"> 
     <tr> 
      <th> Trans Count </th> 
      <th> Trans Amt </th> 
      <th> Match Count </th> 
     </tr> 
     <tr> 
      <td> 300 </td> 
      <td> $200,000 </td> 
      <td> 4 </td> 
     </tr> 
    </table> 
    <a href='#' onClick='modal()'>Close</a> 
</div> 

Не знаю, почему, но он не будет препятствовать мне отступа или вернуться на мой код. Извиняйтесь за плохую читаемость.

+1

Вы уже используете jquery. Есть ли причина, по которой вы не используете диалог jQuery? ИЛИ, вы можете заменить все содержимое своей функции следующим: '$ ("# modal"). Toggle();' –

+0

@DavidFleeman Я думаю, что для диалога jQuery необходим пользовательский интерфейс jQuery. Может, искатель не хочет этого. – Oriol

+0

Я использую jQuery, но функции jQuery click не работают. Я также использую jQuery UI – user2970333

ответ

0

Вы можете попробовать следующее (предполагая, что вы используете JQuery):

$(ui).click(function() { 
    $("#modal").toggle(); 
}); 

Приведенный выше код будет переключать модальность (показать его, если он скрыт, или скрыть его, если он уже виден) при нажатии кнопки кнопка «ui»

+0

Я пробовал это, и по какой-то причине он устранил мои функции щелчка вместе – user2970333

+0

вы можете уточнить, что такое «ui»? – AzadMemon

+0

У вас также есть тег div, который вы не закрываете (второй). – AzadMemon