【问题标题】:Apply class to div from content within another div将类从另一个 div 中的内容应用到 div
【发布时间】:2012-09-29 20:44:36
【问题描述】:

我目前正在使用一个脚本(正在运行),我可以根据另一个 div 的类将某个类应用到一个 div。我更喜欢使用 content:contains() 来确定另一个 div 的类,但是当我使用它时,它会同时从每个 if 语句中应用每个类。我使用的代码如下。

// Set Olympic
            if($(".reg-status.olympic span").hasClass("open")) {
                $(".reg-status-view.olympic").addClass("open");
            }
            if($(".reg-status.olympic span").hasClass("waiting")) {
                $(".reg-status-view.olympic").addClass("waiting");
            }
            if($(".reg-status.olympic span").hasClass("closed")) {
                $(".reg-status-view.olympic").addClass("closed");
            }

            // Set Long Course
            if($(".reg-status.long-course span").hasClass("open")) {
                $(".reg-status-view.long-course").addClass("open");
            }
            if($(".reg-status.long-course span").hasClass("waiting")) {
                $(".reg-status-view.long-course").addClass("waiting");
            }
            if($(".reg-status.long-course span").hasClass("closed")) {
                $(".reg-status-view.long-course").addClass("closed");
            }

问题 1:有没有一种更简洁的方法来做我目前正在尝试的事情
问题2:我如何.addClass 来自带有初始div 的内容,与初始div 上的类相对应。

任何帮助将不胜感激。

【问题讨论】:

标签: jquery add


【解决方案1】:

首先,将搜索放入一个引用变量中,以防止重新搜索 dom。其次,如果源div只包含“open”、“close”、“waiting”类,可以将class属性复制到目标div。

var olySrcDiv = $(".reg-status.olympic span");
var olyTgtDiv = $(".reg-status-view.olympic");
olyTgtDiv.attr("class",olyTgtDiv.attr("class") + " " + olySrcDiv.attr("class"));

var lngSrcDiv = $(".reg-status.long-course span");
var lngTgtDiv = $(".reg-status-view.long-course");
lngTgtDiv.attr("class",lngTgtDiv.attr("class") + " " + lngSrcDiv.attr("class"));

【讨论】:

  • 好主意,但是我不想替换 lngTgtDiv 上的类,我想添加它。我认为这是唯一缺少的东西,但是我不确定如何将第三行正确更改为 addClass(from var lngSrcDiv) 另外我想从 SrcDiv 添加,而不是从类中添加
  • 现在工作。谢谢你。您是否有关于如何修改此代码以引用跨度内的文本作为跨度上的类的建议?谢谢你
  • .reg-status.long-course span:contains("open") 可能有效,但您仍然需要检查所有三行。
  • 尝试过但没有成功,但是我不确定您在三行中检查所有内容是什么意思。也许我做错了什么......
  • Tpaksu,关于将内容引用为与类相关的任何最终想法?
猜你喜欢
  • 2012-01-23
  • 2023-03-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-29
  • 2014-04-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多