Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使镜像/单击div影响其他div?_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 如何使镜像/单击div影响其他div?

Javascript 如何使镜像/单击div影响其他div?,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我编写了这个时间表网格,我想让用户点击英国时间,然后点击美国时间的小时,然后突出显示,我想知道你是否可以通过css来实现这一点我希望选择多个小时。我看过一些示例,但它们只适用于一个div 这是用表构建的,所以我的代码看起来像 <table> <tr class="booked"> <th><a href="">00 am</a></th> <th><a href="">

我编写了这个时间表网格,我想让用户点击英国时间,然后点击美国时间的小时,然后突出显示,我想知道你是否可以通过css来实现这一点我希望选择多个小时。我看过一些示例,但它们只适用于一个div

这是用表构建的,所以我的代码看起来像

<table>
    <tr class="booked">
      <th><a href="">00 am</a></th>
      <th><a href="">01 am</a></th>
      <th><a href="">02 am</a></th>
      <th><a href="">03 am</a></th>
      <th><a href="">04 am</a></th>
      <th><a href="">05 am</a></th>
      <th><a href="">06 am</a></th>
      <th><a href="">07 am</a></th>
      <th><a href="">08 am</a></th>
      <th><a href="">09 am</a></th>
      <th><a href="">10 am</a></th>
      <th><a href="">11 am</a></th>
    </tr>
    <tr class="booked_active">
      <th>4 pm</th>
      <th>5 pm</th>
      <th>6 pm</th>
      <th>7 pm</th>
      <th>8 pm</th>
      <th>9 pm</th>
      <th>10 pm</th>
      <th>11 pm</th>
      <th>12 am</th>
      <th>1 am</th>
      <th>2 am</th>
      <th>3 am</th>
    </tr>
  </table>

下午4点
下午5点
晚上6点
晚上7点
晚上8点
晚上9点
晚上10点
晚上11点
上午12点
凌晨1点
凌晨2点
凌晨3点

注意:将有7个这样的网格,一周中的每一天都有一个。

使用CSS,您可以一次选择一个小时。如果需要多个元素,则必须使用JS

您可以使用CSS通过以下方式完成此操作:

:target伪类表示具有 与文档URI的片段标识符匹配的id

为此,您需要为要突出显示的每个元素提供一个id,使用带有id文本的哈希链接,并为每个元素提供css规则:

<th><a href="#cell1">00 am</a>
</th>

<th id="cell1">4 pm</th>

#cell1:target {
  color: red;
}

下午4点
下午5点
晚上6点
晚上7点
晚上8点
晚上9点
晚上10点
晚上11点
上午12点
凌晨1点
凌晨2点
凌晨3点

如果您使用jquery,这可以很容易地完成

这也是双向的。。他们可以单击顶部或底部

请注意,我没有设计或指定特定的Jquery选择器。 如果这会干扰页面上的其他代码,您可能必须更改选择器

要提供不同的颜色,只需修改CSS即可

$('th')。在('click',选择times)
函数selectTimes(){
$('[hour=“'+$(this).attr('hour')+'“]')).toggleClass('selected');
}
th{
高度:20px;
宽度:20px;
}
.已预订.已选定{
背景颜色:黄色;
}
.已预订\u活动。已选定{
背景色:红色;
}

上午九点
凌晨1点
凌晨2点
凌晨3点
凌晨4点
上午5点
上午6点
上午7点
上午8点
上午9点
上午10点
上午11点
下午4点
下午5点
晚上6点
晚上7点
晚上8点
晚上9点
晚上10点
晚上11点
上午12点
凌晨1点
凌晨2点
凌晨3点

AFAIK,这在CSS中是不可能的。你能提供你的JS(和CSS)来说明你是如何突出显示的吗?这可以用Javascript实现,但不能用纯CSS实现。我建议jQuery:使用
data
属性为每次分配UTC。单击其中一个后,将一个类添加到具有匹配UTC时间的类中。如果您已经在使用JQuery,我认为一个简单的解决方案是使用(如果您不熟悉JQuery)@Cheruvian我不擅长JS,这就是为什么我想知道是否可以使用CSS。谢谢你!哇,太好了!有没有办法选择这些tho的倍数?我希望用户选择多个小时。@SergioEstrada-不幸的是,没有。我错过了您答案中的倍数,现在才看到。这似乎是一种更简单的方法,可以选择多次而不是一次吗?我如何为英国时报添加不同的颜色选择,以便用户不会感到困惑?