相关疑难解决方法(0)

何时使用Vanilla JavaScript与jQuery?

我注意到在监控/尝试回答常见的jQuery问题时,有一些使用javascript而不是jQuery的实践,实际上可以让你写得更少,并做 ...相同的数量.并且还可以产生性能优势.

一个具体的例子

$(this) VS this

在单击事件中引用单击的对象id

jQuery的

$(this).attr("id");
Run Code Online (Sandbox Code Playgroud)

使用Javascript

this.id;
Run Code Online (Sandbox Code Playgroud)

还有其他类似的常见做法吗?可以更轻松地完成某些Javascript操作,而无需将jQuery添加到组合中.或者这是一个罕见的情况?(jQuery"快捷方式"实际上需要更多代码)

编辑:虽然我很欣赏有关jQuery与普通javascript性能的答案,但实际上我正在寻找更多的定量答案. 在使用jQuery时,实际上可以更好地使用普通javascript代替使用的实例(可读性/紧凑性)$().除了我在原始问题中给出的例子.

javascript performance jquery

233
推荐指数
9
解决办法
7万
查看次数

什么是offsetHeight,clientHeight,scrollHeight?

想解释之间有什么区别的offsetHeight,clientHeightscrollHeightoffsetWidth,clientWidthscrollWidth

在客户端工作之前必须知道这种差异.否则他们的一半生命将用于修复UI.

小提琴或下面的内联:

function whatis(propType) {
  var mainDiv = document.getElementById("MainDIV");
  if (window.sampleDiv == null) {
    var div = document.createElement("div");
    window.sampleDiv = div;
  }
  div = window.sampleDiv;
  var propTypeWidth = propType.toLowerCase() + "Width";
  var propTypeHeight = propType + "Height";

  var computedStyle = window.getComputedStyle(mainDiv, null);
  var borderLeftWidth = computedStyle.getPropertyValue("border-left-width");
  var borderTopWidth = computedStyle.getPropertyValue("border-top-width");

  div.style.position = "absolute";
  div.style.left = mainDiv.offsetLeft + Math.round(parseFloat((propType == "client") ? borderLeftWidth : 0)) + "px"; …
Run Code Online (Sandbox Code Playgroud)

html javascript dom offsetheight

205
推荐指数
4
解决办法
10万
查看次数

标签 统计

javascript ×2

dom ×1

html ×1

jquery ×1

offsetheight ×1

performance ×1