【问题标题】:Using multiple instances of Kendo PanelBar in project在项目中使用多个 Kendo PanelBar 实例
【发布时间】:2014-07-08 12:05:55
【问题描述】:

我只是通过构建一个混合应用程序来学习 Kendo Mobile UI。目前我正在使用 Kendo PanelBar 小部件在我的应用程序中制作一些可折叠的菜单,如下所示:

  <ul id="panelBar">
    <li class="child"><strong>What sound was that?</strong>
      <ul>
        <li><em>The sound was from a cow.</em></li>  
      </ul>
    </li>
  </ul>

这里是 Javascript:

<script>
    $(document).ready(function() {
        $("#panelBar").kendoPanelBar();
    });
</script>

好的,Panelbar 正在处理第一个被调用的视图(使用它)。但是,如果我导航到使用它的任何其他视图 - 它根本不会呈现。

现在这是否与我使用 $(document).ready(function() 调用它有什么关系?

更新:我尝试在视图 div 中使用 data-show="onShow",然后使用关联的函数来初始化面板栏,但这对我来说也不起作用。看来剑道面板栏只能用这种方式启动一次。

我很确定在单独的 HTML 页面中使用多个实例时,Kendo PanelBar 存在缺陷。

【问题讨论】:

  • 导航到另一个视图意味着不同的页面?只要您在每次加载时都调用 .kendoPanelBar() ,您就应该很好。您是否收到任何 javascript 错误?
  • 我得到 Uncaught ReferenceError: Media is not defined。但我很确定这与我正在使用的 Cordova Media API 插件有关,因为在 iOS 模拟器中运行时,没有明显的问题。
  • PanelBar 是否使用新的 URL 打破了完全不同的页面?
  • 是的,这些视图位于单独的 HTML 页面中。
  • 并且每个页面都调用 .kendoPanelBar()?

标签: javascript jquery kendo-ui


【解决方案1】:

这可能是因为您为元素分配了一个 ID。 Kendo UI Mobile 将您的所有视图保留在 DOM 中,但隐藏不可见的视图。 这意味着您将拥有多个具有相同 ID 的元素,这不是有效的 HTML,并且 jQuery 选择器$("#panelBar") 只会返回在 DOM 中找到的第一个元素,它可能位于隐藏页面上。

您可以尝试为每个页面设置不同的 ID。


另外,$(document).ready() 只会在应用启动时触发一次,而不是在查看每个页面时触发。


如果您没有将任何选项传递给 .kendoPanelBar() 函数,那么您可能只想使用类而不是 ID。

<ul class="panelBar"> ... </ul>
<ul class="panelBar"> ... </ul>
<ul class="panelBar"> ... </ul>

$(".panelBar").kendoPanelBar();

或者使用 MVVM 方法并在每个元素上设置data-role...

<ul data-role="panelbar"> ... </ul>
<ul data-role="panelbar"> ... </ul>
<ul data-role="panelbar"> ... </ul>

没有对 .kendoPanelBar() 的 javascript 调用

【讨论】:

  • 你的朋友,是冠军!我向 ul 添加了一个类并保留了 ID(因为我附加了样式),并在 javascript 初始化中使用了该类而不是 ID。另外,我现在在视图 div 中使用 data-show="onShow" 然后在函数下进行适当的 js 初始化而不是 $(document).ready() 具有数据角色的 MVVM 方法对我来说不起作用。顺便说一句,我去过你的博客,发现它最有帮助,继续努力!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多