jquery偏移左边的属性不起作用

时间:2017-03-24 15:36:25

标签: javascript jquery css

我有这一行:

hadoop fs -ls ...

当我删除末尾的左侧部分时,它可以正常工作,但当我添加左侧部分时,元素会消失。

不确定发生了什么:

全功能:

$("#"+genId).css({"border":"2px solid black", "background-color":"white", "position":"fixed", "z-index": "10000000000", "top": (pos.top + h + 10)},"left", pos.left + w + 10);

修改

修复了从文件

复制的代码中的拼写错误
function showPopUp(element){

  var pos = element.offset();
  var h = element.height();
  var w = element.width();
  var newDiv = document.createElement('div');
  var genId = ("a" + (new Date).getTime() + Math.floor(Math.random() * 20));

  newDiv.id = genId;
  document.getElementsByTagName('body')[0].appendChild(newDiv);
  $("#"+genId).css({"border":"2px solid black", "background-color":"white", "position":"fixed", "z-index": "10000000000", "top": (pos.top + h + 10), "left": (pos.left + w + 10)});
  $("#"+genId).append("<p> Tag:" + element.prop("tagName") + " || Em: "+ getEm(element) + "em || Px: " + getPixel(element) + "</p><p>Font Family: " + getFontFam(element) + "</p>");

}

2 个答案:

答案 0 :(得分:2)

您使用的css()方法错误。它看起来不像那样。 css()方法只接受一个这样的参数(stringarray)。所以这个:

$("#" + genId).css({
  "border": "2px solid black",
  "background-color": "white",
  "position": "fixed",
  "z-index": "10000000000",
  "top": (pos.top + h + 10)
}, "left", pos.left + w + 10);

应该是这样的:

$("#" + genId).css({
  "border": "2px solid black",
  "background-color": "white",
  "position": "fixed",
  "z-index": "10000000000",
  "top": (pos.top + h + 10),
  "left": (pos.left + w + 10)
});

请阅读 here 中的文档,您将理解。

就像.css( propertyName )

所以你可以拥有这个:

.css('display', 'block')

或者这个:

.css({'display': 'block', 'color': '#f00'})

答案 1 :(得分:0)

不确定这是否是最佳解决方案,但它对我有用。

我使用了margin-left属性而不是left属性,现在它正在运行。