1

环顾四周,似乎是最接近我的问题的答案。但是它会导致其他问题...


这是我的情况:

$element.insertBefore($container);

此行有一条警告,其中insertBefore包含“<em>参数数量无效,应为 2”</p>

/** @type {function(target)} */
$element.insertBefore;
$element.insertBefore($container);

这三行有一个警告,但出于不同的原因。第三行不再有任何关于无效参数数量的警告;但是第二行现在关注的是“<em>Expression 语句不是赋值或调用”。

我尝试了许多其他配置,但它们似乎都不会以任何方式影响第一个警告……但它们不会产生新的警告。其中一些变化如下:

/** @type {function(target)} */
/* $element.insertBefore; */
$element.insertBefore($container);

——</p>

/** @type {function(target)}
$element.insertBefore; */
$element.insertBefore($container);

——</p>

/** @type {function(target)} */
$element.insertBefore($container);

我只是想知道是否有人能给我指出我做错了什么,或者这个警告是否只是系统目前不可逆转的错误。

PS 这实际上是 JavaScript 代码……我只是习惯于在变量前面加上美元符号,这些变量是 jQuery 对象的实例。这意味着上面的调用insertBefore是对 jQuery 函数的调用,而不是对 vanilla JavaScript 函数的调用。

4

1 回答 1

0

似乎insertBefore()确实需要 2 个参数:https ://www.w3schools.com/jsref/met_node_insertbefore.asp

于 2017-07-03T12:05:12.723 回答