javascript - 一键有效创建新元素

标签 javascript jquery html frontend

我正在尝试创建可打印的宝丽来模板,但我对某些元素有问题,我有这样的贴纸容器:

     <div class="sticker-container">
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (1).gif"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (2).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (3).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (4).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (5).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (6).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (7).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (8).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (9).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (10).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (11).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (12).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (13).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (14).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (15).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (16).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (17).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (18).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (19).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (20).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (21).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (22).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (23).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (24).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (25).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (26).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-4/MermaidTropics (27).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (1).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (2).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (3).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (4).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (5).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (6).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (7).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (8).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (9).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (10).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (11).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (12).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (13).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (14).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (15).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (16).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (17).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (18).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (19).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (20).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (21).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (22).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (23).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (24).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (25).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (26).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (27).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (28).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (29).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (30).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (31).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (32).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (33).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (34).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (35).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (36).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (37).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (38).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (39).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (40).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (41).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (42).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (43).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (44).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (45).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (46).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (47).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (48).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (49).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-1/LuuCreativeColors (50).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/1.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/2.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/3.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/4.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/5.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/6.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/7.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/8.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/9.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/10.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/11.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/12.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/13.gif"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/14.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/15.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/16.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/17.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/18.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/19.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/20.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/21.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/22.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/23.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/24.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/25.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/26.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/27.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/28.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/29.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/30.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/31.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/32.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/33.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/34.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/35.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/36.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/37.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/38.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/39.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/40.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/41.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/42.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/43.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/44.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/45.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/46.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/47.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/48.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/49.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-2/50.png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-3/Emoji Face by Waatt (1).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-3/Emoji Face by Waatt (2).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-3/Emoji Face by Waatt (3).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-3/Emoji Face by Waatt (4).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-3/Emoji Face by Waatt (5).png"/></div>
      <div class="sticker"><img src="ssts/img/overlay-3/Emoji Face by Waatt (6).png"/></div>
    </div>

贴纸容器的屏幕截图:

enter image description here

当我点击图片时,它会为宝丽来容器创建新元素,在这里:

enter image description here

我的问题是,如何使其发挥作用?我尝试使用此代码:

    var counter = 0;
      $('.sticker').on("click", function() {
        $('.cutting-container').append("<div class='sticker-body'><img src='ssts/img/overlay-3/Emoji Face by Waatt (6).png'/></div>");
        $('.sticker-body').draggable({
          containment: $('.polaroid')
        });
      });`

但它只会显示我在 .append() 上编写的一张图像,如何在不创建 jquery 每个图像的情况下有效地实现这一点?

更新

enter image description here

整页。正如您在这段代码中看到的:

    var counter = 0;
      $('.sticker').on("click", function() {
        $('.cutting-container').append("<div class='sticker-body'><img src='ssts/img/overlay-3/Emoji Face by Waatt (6).png'/></div>");
        $('.sticker-body').draggable({
          containment: $('.polaroid')
        });
      });

它将在poloroid-container上创建名为sticker-body的新元素,并在append()内附带图像。我有一个名为 sticker 的类,用于 贴纸图像,我想要的是当我使用 ex: image-1< 单击 sticker class 它将显示 image-1,如果是另一个 贴纸类,它将显示 image-2

如何更有效地创建它而不创建 jquery 每个 id (*如果我在每个类中使用 id)?所以我不应该创建很多“append()”代码。谢谢

最佳答案

如果我正确理解你的问题,你有一堆贴纸,用户可以从模板容器中选择并将它们添加到另一个 div 中。

这是我所做的:

  1. 我创建了一个新对象。所以你将处理一个全新的对象。
  2. 我让它可以拖动。

var counter = 0;


$('.sticker').on("click", function() {
  let $sticker = $($(this).html()); // use a cloned object in case you want to eliminate it.
  $('.cutting-container').append($sticker);
   $sticker.draggable({
     containment: $('.polaroid')
   });
 
});

关于javascript - 一键有效创建新元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42993772/

相关文章:

javascript - 无法使用 jsColor 获取 jQuery 中按钮的颜色

javascript - Material 表添加多选查找

javascript - 单击 onClick() 事件后如何禁用 scrollTop() 效果

javascript - 使用 jQuery,是否可以监视 DOM 元素并在每次对其执行操作时进行报告?

javascript - ajax获取另一个网站的内容并使用选择器

html - 如何将 rgba(82, 168, 236, 0.8) 转换为普通的 #000000 类型颜色?

javascript - parse Int 不适用于日期函数

javascript - 如何从jQuery中的下拉列表中获取值

javascript - 阻止 js 函数在初始页面加载时加载

javascript - 使用 css 和 js 固定文本区域中的文本