jquery 自动将文本从元素复制到:before内容属性

hvvq6cgz  于 2023-04-20  发布在  jQuery
关注(0)|答案(1)|浏览(111)

我试图在我的标题上有一个缩放的文本效果,而不创建额外的文本元素。尝试,我使用::before伪元素。为了创建这种效果,然而,伪元素必须具有与实际元素相同的content。因为这在HTML中无法完成,并且在CSS中需要大量的工作(因为它位于多次..),我正在寻找一个通用的方法,所有的元素与这种效果。

我想用一个.attr()函数来复制文本并将其附加到伪元素中,但据我所知这是不可能的。

$(function() {
  $('h1').each(function() {
    var Text = "$(`this`).text()";
    $('this::before').attr('content', Text);
  });
});

有别的选择吗?
CSS的效果,目前来说,还是比较简单的。

:before {
  transform: scale(1.5)
  opacity: .2
  content: "text here"
}
x4shl7ld

x4shl7ld1#

你不能用javascript访问psuedo元素,但是,你可以用CSS访问元素。检查代码片段。

h1::before{
  content: attr(data-before);
}
<h1 data-before="Before Content">
Some Content
</h1>

我猜你甚至不需要javascript。

相关问题