Jquery 移动弹出窗口未使用 requireJS 和backboneJS 触发
Posted
技术标签:
【中文标题】Jquery 移动弹出窗口未使用 requireJS 和backboneJS 触发【英文标题】:Jquery mobile popup is not firing with requireJS & backboneJS 【发布时间】:2013-12-18 03:57:54 【问题描述】:我使用jquery mobile 和backboneJS 进行路由。现在我的问题是我必须从我的函数中动态触发一个弹出窗口。
代码是:
define([
'jquery',
'underscore',
'backbone',
'jquerymobile',
'views/nextview'
], function ($, _, Backbone, JqueryMobile, NextView)
'use strict';
var Collection = '';
var MyView = Backbone.View.extend(
......
renderList: function(tasks)
$(".results").each(function()
$(this).popup("open");
);
,
.......
);
return MyView;
);
html:
<ul class="results" id="results" data-role="pop_up" data-transition="slidedown"></ul>
此 ul 中的 HTML 内容将由在此之前的另一个函数填充。
问题是,$(this).popup("open")
函数没有触发。
上面写着cannot call methods on popup prior to initialization;
【问题讨论】:
您可以同时打开多个弹窗,至少尝试一个。该错误意味着弹出窗口不存在于同一活动页面中,或者仍未呈现。请发布有关弹出标记以及如何动态附加它的更多详细信息。 我尝试使用页面中已经存在的 id 调用单个弹出窗口。它给了我同样的错误。data-role=popup
不是pop_up
jsfiddle.net/Palestinian/y3L2X
谢谢。它正在工作!
@Prabakaran,请让 Omar 正式提交他的答案,并将其标记为已接受。这样,愿意提供帮助的人就会知道您找到了问题的解决方案。
【参考方案1】:
您在data-role
属性中使用了pop_up
而不是popup
。
<ul class="results" id="results" data-role="popup" data-transition="slidedown">
<!-- item -->
</ul>
【讨论】:
以上是关于Jquery 移动弹出窗口未使用 requireJS 和backboneJS 触发的主要内容,如果未能解决你的问题,请参考以下文章
iscrollview 和 jquery 移动弹出窗口底部内容隐藏