使用Jquery打开模式窗口
Open modal window with Jquery
我有一个工作模式,它有以下代码:
<!-- modal code -->
<a href="#follow" rel="modal:open"> Follow </a>
<!-- modal window -->
<div id="ex1" style="display:none">
<p> Please <%= link_to "Login", new_user_session_path %> </a> to Extend. </p>
</div>
我创建了一个名为"extendbutton"的div类。我想通过点击该分区来显示模态。
<li class="extend-button"> Extend </li>
$(document).ready(function(){
$(".extend-button").mouseup(function(){
$("#ex1").dialog('open');
});
});
这不起作用。
考虑使用click()
函数。否则,假设dialog('open')
按预期工作,一切看起来都很好。添加控制台日志以确保单击事件处理程序能够帮助您进行调试。
$('.extend-button').click(function (e) {
console.log('clicked');
$("#ex1").dialog('open');
});
您需要首先将所有jquery代码移动到<script>
标记中。然后用$(".extend-button").click
替换$(".extend-button").mouseup
。
mouseup
事件和click
事件的区别在于,对于mouseup
事件,您可以单击鼠标,按住鼠标,并在释放鼠标以触发mouseup
事件之前将鼠标指针拖动到任何位置。单击事件要求mousedown
和mouseup
事件发生在同一元素上。
通常的预期是,单击需要mousedown
和mouseup
事件。
HTML中的以下更改让我度过了一天。不需要jquery。
<a href="#ex1" rel="modal:open" class="extend-button"> Extend </a>
首先,确保在页面的<head>
中包含JQuery UI库和CSS文件。
<link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/themes/smoothness/jquery-ui.css" />
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/jquery-ui.min.js"></script>
HTML:
<!-- modal code -->
<a href="#follow" rel="modal:open"> Follow </a>
<!-- modal window -->
<div id="ex1" style="display:none">
<p> Please <%= link_to "Login", new_user_session_path %> </a> to Extend. </p>
</div>
<li class="extend-button"> Extend </li>
您还需要确保将代码包装在<script>
标记中。正如@elzi所提到的,使用.click()
事件可能更好。
<script type="text/javascript">
$(function(){
$(".extend-button").on("click", function(){
$("#ex1").dialog('open');
});
});
</script>
相关文章:
- Angular$scope在模式窗口内不起作用
- 更改不在引导模式窗口中工作的月份和年份
- TinyMCE全屏不允许出现模式窗口
- 自动模式窗口?/欢迎弹出框
- 推特Boostrap模式窗口-可拖动不工作
- Twitter Boostrap:模式窗口在重新播放模式窗口后不播放视频
- 在Bootstrap模式窗口中打开远程内容
- jQuery模式窗口在内容为“”时不居中;注入“;在飞行中
- 如何在模式窗口弹出窗口中隐藏滚动条
- fancybox将内容更改为模式窗口
- 将值传递给模式窗口中的 JavaScript 函数
- HTML 瞬态模式窗口
- 具有 UI 引导模式窗口的父$scope子
- 如何将参数传递到 UI 路由器状态的模式窗口
- 如何使用引导程序创建模式窗口
- j查询模式窗口,刷新父问题
- 无法将引导模式窗口作为路由打开
- 如何使模式窗口打开动态内容并更改url
- 在引导模式窗口内路由
- 更新面板和模式窗口