为动态创建的卡片附加不同的功能

布赖恩

我有一个卡片列表,它是通过循环存储在 Firebase 上的一些 JSON 数据来创建的。每张卡片分为两部分:“overviewCardInfo”和“overviewCardOptions”。

我想让它在单击选项部分时调用一个函数(在本例中为 .toggleClass()),当单击信息部分时,该卡的标题显示在其他地方。

到目前为止,我一直无法实现任何一种效果:卡片的标题无处可见,toggleClass() 要么影响类“.overviewCardOptions”的 div,要么影响所有卡片,而不仅仅是点击的卡片。

这是我从 Firebase 获取的用于生成卡片的 JSON 数组的样子:

[{"name":"Push Ups", "duration":3, "break":3},{"name":"Squats", "duration":3, "break":3},{"name":"Running in Place", "duration":3, "break":3}]

JavaScript(一些jQuery):

  // Compile Routine Overview List.
  var obj = JSON.parse(localStorage.exercise); // The JSON shown above
  obj.forEach(function(exercise)
  {
    $("#overviewList").append("<li><div class='overviewCard'><div class='overviewCardInfo'>\n\
    <h3>" + exercise.name + "</h3><p>" + exercise.duration + " sec.</p><p id='right'>Break: " + exercise.break + " sec.</p>\n\
    </div><div class='overviewCardOptions'><img src='images/thrash.png' width='23' alt='' /></div></div></li>");
  });

$(document).on("click", ".overviewCardInfo", function() // Attach event handler to document, as cards are generated after other elements on page.
  {
    $("#overviewSpecifier").css("display", "block"); // Works fine.
    $("#infoP").text($(this).text()); // Shows all text contained in card, of course, how do I target the h3 tag specifically? jQuery API docs not helping me understand atm.
  });

  $(document).on("click", ".overviewCardOptions", function()
  {
    $(".overviewCard", this).toggleClass("toDelete"); // Fails.
  });

HTML:

<ul id="overviewList"></ul>

<div id="overviewSpecifier">
  <p id="infoP"></p>
</div>
米娜

click()事件附加document改为使其成为全局事件

$(document).on("click", ".overviewCardOptions", handleThrashClick);

此外,您的对象(实际上它是一个数组)不应该有引号

var obj = "[ ... ]" 应该 var obj = [ ... ]

在此处查看演示 >> https://fiddle.jshell.net/9a457qzv/3/

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在laravel nova中创建动态数量的卡片

来自分类Dev

如何为不同的内容使用不同的卡片布局?

来自分类Dev

对数组中不同大小的卡片进行排序

来自分类Dev

如何调整具有不同图像大小的卡片但保持卡片大小

来自分类Dev

动态创建附加属性

来自分类Dev

为用户创建具有不同功能的不同层(Rails)

来自分类Dev

为每个动态创建的按钮为意图添加不同的 putExtra

来自分类Dev

如何将动态信息带入基于离子框架的卡片?

来自分类Dev

集会在生成的卡片中打印带有父功能名称的故事

来自分类Dev

集会在生成的卡片中打印带有父功能名称的故事

来自分类Dev

通过不同的活动在RecycleAdapter中打开特定的卡片项目

来自分类Dev

使用不同的卡片样式滚动时,recyclerView变得混乱

来自分类Dev

Android 中的 Cardview - 可以使用不同的卡片来收集用户信息吗?

来自分类Dev

Bootstrap 4:如何将不同高度的卡片排成一排?

来自分类Dev

如何检索所有数据并显示在不同的卡片中

来自分类Dev

Google风格的卡片(问题)

来自分类Dev

Flutter:制作选定的卡片

来自分类Dev

片段内的卡片视图

来自分类Dev

如何动态附加jQuery功能

来自分类Dev

如何创建类似于Google Now的卡片悬停样式效果

来自分类Dev

如何使用int Arrays创建带有面孔和花色的卡片组?

来自分类Dev

为jQuery中的动态创建按钮赋予不同的ID

来自分类Dev

Ionic中的相同高度的卡片

来自分类Dev

仅显示点击的卡片的内容

来自分类Dev

将堆叠的卡片裹起来

来自分类Dev

使用CSS的卡片滑动/翻转效果

来自分类Dev

更新Google Glass中的卡片文字

来自分类Dev

Android重叠的卡片视图动画

来自分类Dev

无法让 Bootstrap Popover 处理生成的卡片

Related 相关文章

  1. 1

    在laravel nova中创建动态数量的卡片

  2. 2

    如何为不同的内容使用不同的卡片布局?

  3. 3

    对数组中不同大小的卡片进行排序

  4. 4

    如何调整具有不同图像大小的卡片但保持卡片大小

  5. 5

    动态创建附加属性

  6. 6

    为用户创建具有不同功能的不同层(Rails)

  7. 7

    为每个动态创建的按钮为意图添加不同的 putExtra

  8. 8

    如何将动态信息带入基于离子框架的卡片?

  9. 9

    集会在生成的卡片中打印带有父功能名称的故事

  10. 10

    集会在生成的卡片中打印带有父功能名称的故事

  11. 11

    通过不同的活动在RecycleAdapter中打开特定的卡片项目

  12. 12

    使用不同的卡片样式滚动时,recyclerView变得混乱

  13. 13

    Android 中的 Cardview - 可以使用不同的卡片来收集用户信息吗?

  14. 14

    Bootstrap 4:如何将不同高度的卡片排成一排?

  15. 15

    如何检索所有数据并显示在不同的卡片中

  16. 16

    Google风格的卡片(问题)

  17. 17

    Flutter:制作选定的卡片

  18. 18

    片段内的卡片视图

  19. 19

    如何动态附加jQuery功能

  20. 20

    如何创建类似于Google Now的卡片悬停样式效果

  21. 21

    如何使用int Arrays创建带有面孔和花色的卡片组?

  22. 22

    为jQuery中的动态创建按钮赋予不同的ID

  23. 23

    Ionic中的相同高度的卡片

  24. 24

    仅显示点击的卡片的内容

  25. 25

    将堆叠的卡片裹起来

  26. 26

    使用CSS的卡片滑动/翻转效果

  27. 27

    更新Google Glass中的卡片文字

  28. 28

    Android重叠的卡片视图动画

  29. 29

    无法让 Bootstrap Popover 处理生成的卡片

热门标签

归档