疑似要素の理解
javascriptで、疑似要素のcontent内容を取得する方法は以下のページに書かれていました。 http://ithat.me/2016/09/29/js-jquery-pseudo-element-property-get-and-set "getComputedStyle"関数でエレメントを選択してcss記述を拾うことができるようですね。 細かい話ですが、IEは別のソースにしないといけないかも・・・ 他のページには、classやdata属性をjavascriptで可変にすることで疑似要素のcssコードを変更したり、アニメーションさせたりする方法が記述しているページがほとんどだったので、やはりjavascriptと疑似要素との相性はあまり良くないということが理解できます。hoverは普通に対応できる
クリックイベントはできないけれど、cssのhoverには疑似要素は対応しているようです。<html>
<head>
<title>Clone</title>
<style>
#elm{
cursor:pointer;
}
#elm:before{
content:"@@@";
}
#elm:hover:before{
color:blue;
}
</style>
</head>
<body>
<div id="elm">element-view</div>
</body>
</html>
ただし、これはDOM要素部分のhoverに対して疑似要素をセットすることができるということで、実際にサンプルコードを実行すると、疑似要素部分の文字列をhoverアクションで色変更するようにしています。
See the Pen js-pseudo by YugetaKoji (@geta1972) on CodePen.
注意点としては、 "#elm:hover:before"が、"#elm:before:hover"となっていては、全く動作しません。あくまでhoverした状態のbeforeという扱いです。
0 件のコメント:
コメントを投稿