【问题标题】:How can you add a class to the body tag if the page contains specific text with Jquery?如果页面包含带有 Jquery 的特定文本,如何将类添加到 body 标记?
【发布时间】:2020-07-01 04:09:17
【问题描述】:

我正在构建一个电子商务网站,如果页面包含特定术语(在本例中为“附件”),则需要向 body 标记添加一个类。我已经使用此代码来设置它出现的跨度的样式,但我需要将整个页面包装在一个类中以设置某些元素的样式。

$(document).ready(function () {
$("span:contains('Accessories')").addClass("newstyle");

有什么建议吗?

【问题讨论】:

  • span改成body
  • 不幸的是,这还不够具体,因为它会添加到每个页面,因为附件位于其他位置,例如菜单或页脚,因此它将添加到每个页面。这是我正在使用的思考过程,如果有更好的方法,请赐教。从电子商务平台输出的代码如下所示:Accessories by Type 我需要为 span 分配一个 id 和类
  • 您说“如果页面包含特定术语”。你没有说这个词必须在一个特定的地方。
  • 感谢您的帮助,但我仍然无法将课程添加到正文中。您可以在此处查看我的页面:test97.mybigcommerce.com/avpf2-b-ash-vacuum-pre-filter 预览代码:9jcfc6f675 Bigcommcerce 没有任何基于类别类型的 id 或类。无法在实际产品页面上识别产品类别。我知道我让它变得混乱,但最终结果将是如果页面包含“Accessories”,然后将“newstyle”添加到主体类。
  • 请用这些细节更新问题。我已经更新了我的答案以匹配它。

标签: jquery class styles add


【解决方案1】:

使用:has() 测试正文是否包含包含Accessories 的特定元素

$("body:has(span[itemprop='name'].newaccessories:contains(Accessories))").addClass("newstyle");

【讨论】:

    猜你喜欢
    • 2013-03-30
    • 2011-10-22
    • 2012-10-01
    • 2015-01-23
    • 2016-04-30
    • 1970-01-01
    • 2017-07-07
    • 2015-01-29
    • 1970-01-01
    相关资源
    最近更新 更多