【问题标题】:How to get dynamic id?如何获取动态ID?
【发布时间】:2014-08-20 12:39:47
【问题描述】:

我想在 jquery 中访问动态生成的 id。但它在 jquery 中不起作用,但在 javascript 中起作用。

我的 jquery 代码:

var img =  $("#MAP"+current_img_height);
 $("#map").css({'height': img.height + "px"});

我的 javascript 代码:

var img = document.getElementById("MAP" + current_img_height);
$("#map").css({'height': img.height + "px"});

我的 jquery 代码有什么问题以及如何获取动态 id。 任何帮助将不胜感激

【问题讨论】:

  • 为什么在 JavaScript 工作正常的情况下使用 jQuery???

标签: javascript jquery css frontend


【解决方案1】:

img 是一个 jQuery 对象,不是 dom 元素引用,所以它没有 height 属性,它有一个 height() 方法所以

$("#map").css({'height': img.height() + "px"});

$("#map").height(img.height());

【讨论】:

  • 它可以工作,但我的地图背景颜色发生了变化。单击上一个和下一个按钮时。
【解决方案2】:

试试这个,如果你使用$('#MAP')[0]你可以得到OBject。

        document.getElementById('#MAP');//Return DOM Object
        var img = $('#MAP')[0]; //returns a HTML DOM Object

        var img=$('#MAP'+current_img_height)[0];

【讨论】:

    【解决方案3】:

    作为您的代码:

    $("#MAP"+current_img_height);
    

    (如果 current_img_height = 100)

    这意味着$("#MAP100"); *(例如:<img id="MAP100"> 给定ID为“MAP100”的元素

    如果你想从元素中获取高度:这样做

    var height =  $("#whateverID").height();
    

    var height =  $(".whateverClass").height();
    

    【讨论】:

      猜你喜欢
      • 2022-01-13
      • 2016-11-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-29
      相关资源
      最近更新 更多