Javascript 类名称作为函数中的变量,带有附加代码

Javascript 类名称作为函数中的变量,带有附加代码,javascript,jquery,Javascript,Jquery,我想设置一个较长的类名作为变量,以便只使用一次而不是每次。我可以单独使用,也可以获得额外的代码,如“:last” 我有以下代码: HTML: 不幸的是,我对代码的想法不起作用…也许你是有意这么做的 var elems=document.querySelectorAll(“section.start div.container div.someclass”) 元素[elems.length-1].classList.add(“last”) .last{color:red} 1. 2. 3. 也

我想设置一个较长的类名作为变量,以便只使用一次而不是每次。我可以单独使用,也可以获得额外的代码,如“:last”

我有以下代码:

HTML:


不幸的是,我对代码的想法不起作用…

也许你是有意这么做的

var elems=document.querySelectorAll(“section.start div.container div.someclass”)
元素[elems.length-1].classList.add(“last”)
.last{color:red}

1.
2.
3.

也许你是有意这么做的

var elems=document.querySelectorAll(“section.start div.container div.someclass”)
元素[elems.length-1].classList.add(“last”)
.last{color:red}

1.
2.
3.

如果我正确理解了您的问题,那么这可能是一个使用ES2015的好机会

这允许您将JavaScript表达式实质上嵌入到字符串中。因此,如果您有一个包含要选择的类的变量,并且jQuery选择器的其余部分是其他字符串(如
:last
[data target=“foo”]
,等等),那么您可以将该变量嵌入字符串中

例如:

const classesToSelect = ".some .element .with .lots .of .classes";

// Append the :last selector usin template string
$(`${classesToSelect}:last`)
当然,您不必为此使用模板字符串。您可以简单地使用
+
操作符:

// Using string concatenation
$(classesToSelect + ":last")

总而言之,你可能想再温习一下。这可能会让您更好地了解问题的解决方案。

如果我正确理解了您的问题,那么这可能是使用ES2015的好机会

这允许您将JavaScript表达式实质上嵌入到字符串中。因此,如果您有一个包含要选择的类的变量,并且jQuery选择器的其余部分是其他字符串(如
:last
[data target=“foo”]
,等等),那么您可以将该变量嵌入字符串中

例如:

const classesToSelect = ".some .element .with .lots .of .classes";

// Append the :last selector usin template string
$(`${classesToSelect}:last`)
当然,您不必为此使用模板字符串。您可以简单地使用
+
操作符:

// Using string concatenation
$(classesToSelect + ":last")

总而言之,你可能想再温习一下。这可能会让您更好地了解问题的解决方案。

请显示所需的HTML元素以及所需的所有类。
fullClassName
变量如何?您什么时候在代码中使用它?你有没有检查控制台的JS错误?你应该…@AlonEitan,因为它只是功能的一部分。我需要它好几次,我不想每次都集成整个类路径。我正在寻找一个更智能的解决方案。@AlonEitan我找到了,控制台告诉我“未捕获引用错误:未定义节”您似乎对字符串和字符串连接的工作方式缺乏基本了解。您对
+
完全是一团糟。您应该阅读一篇介绍性的JavaScript教程。请显示所需的HTML元素以及您想要的所有类。
fullClassName
变量如何?您什么时候在代码中使用它?你有没有检查控制台的JS错误?你应该…@AlonEitan,因为它只是功能的一部分。我需要它好几次,我不想每次都集成整个类路径。我正在寻找一个更智能的解决方案。@AlonEitan我找到了,控制台告诉我“未捕获引用错误:未定义节”您似乎对字符串和字符串连接的工作方式缺乏基本了解。你对
+
的使用完全是一团糟。你应该读一本介绍性JavaScript教程。这也是一个很好的答案,尤其是在使用vanilla JS时。这也是一个很好的答案,尤其是在使用vanilla JS时。