问题确实说明了一切,
如果有元素
<span class="a-class another-class test-top-left"></span>
我怎样才能获得classname,从“test-”开始到一个字符串变量中,然后我可以将该类名中的顶部和左侧单词提取到单独的变量中并使用它们。
答案 0 :(得分:3)
var test = ($("span[class*='test-']")[0].className).split("test-")[1].split("-");
test [0]将包含“top”,test [1]将包含“left”。
以下是工作演示:http://jsfiddle.net/kayen/QJCpc/
答案 1 :(得分:0)
我使用正则表达式来查找和提取类。此处逐步演示:http://jsfiddle.net/JAAulde/baVq5/1/和http://jsfiddle.net/JAAulde/baVq5/2/
/* Get the class attribute from the element */
var wholeclass = $('span').attr('class'),
/* Define a regex to find the class in question */
pattern = /(?:^|\s)test-[a-z0-9_-]+(?:\s|$)/mi,
/* run the regex against the class */
matches = wholeclass.match(pattern),
/* get the portion of the match array and trim it up */
extractedclass = $.trim(matches[0]);
答案 2 :(得分:0)
var myClasses = document.getElementsByTagName("span")[0].className.split(' '),
Lastclass = myClasses[myClasses.length-1].split('-'),
first = Lastclass[0], //test
second = Lastclass[1], //top
third = Lastclass[2]; //left