Jquery 向动态创建的元素添加属性

Jquery 向动态创建的元素添加属性,jquery,Jquery,我正在使用Embedly从视频站点生成缩略图和视频预览。代码如下: <ul id="galleryThumb"> <li id="1"><a href="http://www.youtube.com/watch?v=wTcz-etqwKg" class="thumb">Video</a></li> <li id="2"><a href="http://www.youtube.com/watch?v=zVNTdW

我正在使用Embedly从视频站点生成缩略图和视频预览。代码如下:

<ul id="galleryThumb">
  <li id="1"><a href="http://www.youtube.com/watch?v=wTcz-etqwKg" class="thumb">Video</a></li>
  <li id="2"><a href="http://www.youtube.com/watch?v=zVNTdWbVBgc" class="thumb">Video</a></li>
  <li id="3"><a href="http://www.youtube.com/watch?v=Q5im0Ssyyus" class="thumb">Video</a></li>
  <li id="4"><a href="http://www.youtube.com/watch?v=wCF3ywukQYA" class="thumb">Video</a></li>
</ul>

<script>
$(document).ready(function() {
$(".thumb").embedly({
        key : 'MY_KEY',
        className: "vidPreview"
    },
    function(oembed, dict) {
        if ( oembed == null)
            return;
        var output = "<a class='embedly' href='#'><img src='"+oembed.thumbnail_url+"' /></a>";
        output += oembed['code'];
        $(dict["node"]).parent().html(output);
    });
});
</script>

中,vidPreview-1
来自
  • 的ID,该ID位于
    $(dict[“node”])附近的某个地方。parent()
    将是您试图添加
    ID
    。您可以通过调用
    .setAttribute(“id”,“vidPreview-”+num)
    来设置
    id
    。您可以在调用
    .html(输出)
    的行的正下方进行此调用。如果看不到Embeddely正在操作的邻居的dom片段,就很难准确地告诉您要使用什么代码来导航到
  • 以下是我的工作代码,以防有人遇到同样的情况:

    $(".thumb").embedly({
        key : 'MY_KEY',
        className: "vidPreview"
    },
    function(oembed, dict) {
        if ( oembed == null) return;
        var test = $(dict["node"]).parent().attr("id");
        var output = "<a class='embedly' href='#'><img src='"+oembed.thumbnail_url+"' /></a>";
        output += oembed['code']; $(dict["node"]).parent().html(output).find("div").attr("id", "vidPreview-" + test);
    });
    
    $(“.thumb”).embedly({
    钥匙:“我的钥匙”,
    类名:“视频预览”
    },
    功能(oembed,dict){
    if(oembed==null)返回;
    var test=$(dict[“node”]).parent().attr(“id”);
    var输出=”;
    output+=oembed['code'];$(dict[“node”]).parent().html(output.find(“div”).attr(“id”,“vidPreview-”+测试);
    });
    
    代码在哪里起作用?它是否插入到
  • 的内部,且
    在其内部?这就是
    $(dict[“node”]).parent()所指的吗?@jstiff列表元素中的所有锚链接都将替换为:
    ,我最终使用下面的代码使其工作。我只是想征求一下我的意见,如果我做得对的话(还不能回答)<代码>$(“.thumb”).embeddely({key:'MY_key',className:“vidPreview”},函数(oembed,dict){if(oembed==null)返回;var test=$(dict[“node”]).parent().attr(“id”)//alert(test);var output=“”;output+=oembed[“code”];$(dict[“node”]).parent().html(output.find(“div”).attr”(“id”,“vidPreview-”+););)test)
    <div id="vidPreview-1" class="vidPreview">
    
    $(".thumb").embedly({
        key : 'MY_KEY',
        className: "vidPreview"
    },
    function(oembed, dict) {
        if ( oembed == null) return;
        var test = $(dict["node"]).parent().attr("id");
        var output = "<a class='embedly' href='#'><img src='"+oembed.thumbnail_url+"' /></a>";
        output += oembed['code']; $(dict["node"]).parent().html(output).find("div").attr("id", "vidPreview-" + test);
    });