我可以编写什么 PHP 或 jQuery 来自动找到元素(通常是<p>
标签)内的短语(例如“每日文摘”)的第一个实例,并自动在文本周围添加一个带有我选择的类的跨度?
换句话说,我希望页面上任何元素内的短语“每日文摘”的第一个实例以红色突出显示,而用户不必自己在文本周围添加一个跨度(因为使用该网站的人是代码文盲)。如果该短语在一个或其他元素中多次使用div
,我只想突出显示第一个实例。
尝试这个:
$content = preg_replace('/'.$word.'/i', '<span class="red">$0</span>', $content);
在 preg_replace 上查看更多信息。
代码测试。有用。
$(body).filter(function() {
return $("p", this).text() == "Daily Digest";
}).wrapAll("<span class='myClass'></span>");
注意 - 这将找到 的所有实例<p>Daily Digest</p>
,并将它们转换为<span class='myClass'><p>Daily Digest</p></span>
. 我会让你弄清楚如何只在某个元素中的第一个实例上执行此操作。
检查这个
$testwords= preg_replace('/'.$contents.'/i', '<span class="sample">Sample Content</span>', $testwords);