3 回答

TA貢獻1848條經(jīng)驗 獲得超2個贊
span
<p>
p span
p:before

TA貢獻1877條經(jīng)驗 獲得超6個贊
事實上,這是可能的。您可以檢查單擊的位置是否在元素之外,因為只有在以下情況下才會發(fā)生這種情況:::before或::after被點擊了。
此示例只檢查右邊的元素,但在您的情況下應(yīng)該有效。
span = document.querySelector('span');
span.addEventListener('click', function (e) {
if (e.offsetX > span.offsetWidth) {
span.className = 'c2';
} else {
span.className = 'c1';
}
});
div { margin: 20px; }
span:after { content: 'AFTER'; position: absolute; }
span.c1 { background: yellow; }
span.c2:after { background: yellow; }
<div><span>ELEMENT</span></div>
添加回答
舉報