问题真的说明了一切,
如果有一个元素
<span class="a-class another-class test-top-left"></span>
如何获取以“test-”开头的类名到一个字符串变量中,这样我就可以将该类名中的顶部和左侧单词提取到单独的变量中并使用它们。
var test = ($("span[class*='test-']")[0].className).split("test-")[1].split("-");
其中 test[0] 将包含“top”,而 test[1] 将包含“left”。
这是工作演示:http: //jsfiddle.net/kayen/QJCpc/
我会使用正则表达式来查找和提取类。分步演示: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]);
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