Jquery UI 对话框不能与 JQuery Mobile 一起工作
Posted
技术标签:
【中文标题】Jquery UI 对话框不能与 JQuery Mobile 一起工作【英文标题】:Jquery UI dialog not working along side JQuery Mobile 【发布时间】:2017-04-27 09:58:27 【问题描述】:当我还包含 JQuery mobile 时,我无法在 JQuery 中获得一个简单的对话框:
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>jQuery UI Dialog - Default functionality</title>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/jquery-2.1.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
<script>
$( function()
$( "#dialog" ).dialog();
);
</script>
</head>
<body style="background-color: #888">
<div id="dialog" title="Basic dialog">
<p>This is the default dialog which is useful for displaying information. The dialog window can be moved, resized and closed with the 'x' icon.</p>
</div>
</body>
</html>
我已经查看了这些似乎没有帮助的先前问题:
jquery mobile dialog not working Incompatible jquery mobile and ui我做错了什么?
【问题讨论】:
【参考方案1】:阅读 RedNao 的 Using multiple versions of jquery ui 帖子后,我能够创建一个简单的概念证明。
这个想法是交换两个 jQuery 实例,但是,请注意,我还没有完全测试过代码中的大量使用。
之后,我使用data-enhance="false"
将 UI 对话框标记隐藏到 jQuery Mobile。
<link rel="stylesheet" href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<link rel="stylesheet" href="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css">
<link rel="stylesheet" href="style.css">
<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
<script>
var jQM=jQuery, $QM=$;
</script>
<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<script>
var jQUI=jQuery, $QUI=$;
window.jQuery = jQM;
window.$ = $QM;
$(document).on('mobileinit', function ()
$.mobile.ignoreContentEnabled = true;
);
</script>
<script src="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
然后,它看起来像这样:
Plunker:https://plnkr.co/edit/oOg6cKEuMFXVrMn3ntCb?p=preview
【讨论】:
以上是关于Jquery UI 对话框不能与 JQuery Mobile 一起工作的主要内容,如果未能解决你的问题,请参考以下文章
将 jquery ui 对话框与 knockoutjs 集成
jquery ui dialog 内部使用asp.net控件