2015-10-16 54 views
0

後,我有一個非常簡單的元素:
enter image description here
如何我可以檢查這個元素包含::使用Javascript後?的Javascript:檢查::在元素

(我有使用document.getElementsByTagName('h2')[0]元素)

我不知道事情是如何工作的,我也不需要知道,我只需要代碼來查看它是否存在...

在某些情況下,元素看起來像這樣:
enter image description here
我需要能夠檢測到兩種情況,如果可能的話!

回答

0

檢查此鏈接,介紹瞭如何在純JavaScript中使用它(可能只在新的瀏覽器工作):http://davidwalsh.name/pseudo-element

編輯:如果你是要編輯什麼的內容:後,參照此SO問題:Selecting and manipulating CSS pseudo-elements such as ::before and ::after using jQuery

+0

只是尋找一種方式來區分元素... – ManIkWeet

+0

試了一下,工作原理:'window.getComputedStyle(document.querySelector('H2 '),':'之後)。getPropert當:: after不存在時,yValue('background')'是不同的,所以我可以使用它! – ManIkWeet

+0

很高興聽到它 - 我正在看jQuery選擇器(https://api.jquery.com/category/selectors/),但它似乎並不像他們有一個,因爲它是一個比HTML更CSS的東西... – RebelFist

1

這將是這樣的:

var pre = onload; // assign previous onload if any 
onload = function(){ // onload wrapper start 
if(pre)pre(); // execute previous onload in the new onload 
var doc = document, h2a = doc.getElementsByTagName('h2'); 
var afterIn = [], afterOut = []; 
for(var i=0,l=h2a.length; i<l; i++){ 
    var h2 = h2a[i]; 
    if(h2.value.match(/\:\:after/)){ 
    afterIn.push(h2); 
    } 
    else{ 
    afterOut.push(h2); 
    } 
} 
for(var i=0,l=afterIn.length; i<l; i++){ 
    console.log(afterIn[i].value); 
} 
for(var i=0,l=afterOut.length; i<l; i++){ 
    console.log(afterOut[i].value); 
} 
} // onload wrapper end 
+0

'document.getElementsByTagName('h2')[0] .value'似乎總是未定義的 – ManIkWeet

+0

運行'onload',在''使用外部''。 – PHPglue