我正在制作一个网络应用程序原型,我已经设置了一个jsFiddle来向您展示。(原始的原型)
我的两个功能非常完美。
但是,一旦这些选项出现,则下一个函数在调用时将不起作用。
也许我是瞎子?我今天有一个8小时的编码课程。
但是一旦选择了一个选项,则包含该选项的容器应消失
function begin(){
$( this ).hide();
$(".center-logo").hide(),
$(".clapper").show(),
$(".clapper").text("tap to chose option")
}
function movieChoice(){
$("#film-list").fadeIn('slow'),
$(movieList.movies).each(function(index){$("#movies").append('<li class="selector" id="'+this.rating+'">' + this.name + '</li>');});
}
function movieSelector(){
$("#film-list").fadeOut('slow')
$(".clapper").hide()
$(".date").show()
}
$("#begin").on( "swiperight", begin)
$(".clapper").on( "tap", movieChoice)
$(".selector").on( "tap", movieSelector)
改变这个
$(".selector").on( "tap", movieSelector)
到
$("#movies").on("tap", ".selector", movieSelector)
而且你很好走。您的代码无效,因为在您与绑定selector
时movieSelector()
,尚不可用。这应该可以解决此问题,因为movies
当DOM为时可用ready
。还有另一种方式。除了绑定tap
到最接近的静态父对象(在本例中为movies
),您还可以将其绑定到document
。
$(document).on("tap", ".selector", movieSelector)
您的代码还有另外两件事:
您正在使用ready
事件来完成所有这一切。考虑使用诸如此类的页面事件pageinit
或pageshow
绑定数据/ init的东西等。但是由于data-role=page
您甚至没有包含在代码中,因此建议您从问题中删除jQM标记。
另外,您使用了,
而不是;
。您可能要更改它。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句