删除jQuery,但.className + =不工作?

时间:2016-07-07 11:26:50

标签: javascript

我有一个非常简单的画布菜单在jQuery中运行良好。我试图用vanilla javascript重写它。

在下面的代码中,addClass(jQuery)正在运行,但.className + =不行。

add_action( 'pre_get_posts', 'pre_check', 10, 2);
function pre_check($query) {
  global $user_ID;
  if ( !current_user_can( 'edit_others_posts' ) && $query->query['post_type'] != 'acf-field-group' && $query->query['post_type'] != 'acf-field') {
    $query->set('author',  $user_ID);
  }

  return $query;
}

2 个答案:

答案 0 :(得分:2)

那是因为$(html)为你提供了一个jQuery对象,而不是一个原生的DOMElement。

您可以访问jQuery对象的键$(html) // returns a jQuery object $(html)[0] // returns a native DOMElement 处的本机元素:

$(html).className += ' menu-opening';

所以要添加一个类名,你应该使用这样的东西:

{{1}}

答案 1 :(得分:0)

使用:NSURLSession

或者如评论中所建议的那样:

document.querySelector('html').className = document.querySelector('html').className + ' myClassName'

甚至更干净:var htmlNode = document.querySelector('html'); htmlNode.className = htmlNode.className + ' myClassName'