首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用javascript设置box-shadow时出现问题

使用javascript设置box-shadow时出现问题
EN

Stack Overflow用户
提问于 2015-12-08 00:50:22
回答 1查看 40关注 0票数 0

我使用颜色窃贼从每个图像中提取主色,并将该颜色设置为图像上的方框阴影。显示了4个图像,所以我将它们存储在一个数组中,循环遍历数组,从每个图像中提取主色,并在每次循环中将其设置为boxShadow。我不知道我的代码出了什么问题,因为什么都没有发生,任何帮助都将不胜感激!

JS:

代码语言:javascript
复制
  var slides = document.getElementsByClassName('slideImg');

  for (var i = 0; i < slides.length; i++) {
    var sourceImage = slides[i];
    var colorTheif = new ColorThief();
    var color = colorTheif.getColor(sourceImage);
    slides[i].style.boxShadow = "inset 0 0 0 350px color";
  };

HTML:

代码语言:javascript
复制
<div class="opinion">
  <div class="wrap">
    <div class="atable">
      <?php query_posts(array('post_type' => array('community', 'projects'),'posts_per_page' => 4,'post_parent' => 0, 'post_status' => array('publish'), 'orderby' => 'menu_order date')); ?>
      <?php while (have_posts()) : the_post(); ?>
        <div class="acell">
          <div class="contentbox">
            <?php $thumb = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID, 'issues'), 'large_size' );
            $url = $thumb['0']; ?>

            <ul class="slides">
              <li><a href="<?php the_permalink(); ?>" title="Permalink to <?php the_title(); ?>" ><?php the_post_thumbnail('issues', array('class' => 'slideImg')) ?><span class="yo"><?php the_title(); ?></span></a></li>
            </ul>

          <!-- <a href="<?php the_permalink(); ?>" title="Permalink to <?php the_title(); ?>"><?php the_post_thumbnail('issues'); ?><h3><?php the_title(); ?></h3></a> -->
          </div>
        </div>
      <?php endwhile; wp_reset_query(); ?>
    </div>
  </div>
</div>

CSS:

代码语言:javascript
复制
.opinion .atable .acell .contentbox {
position: relative;
}

.opinion .atable .acell .contentbox img {
  width: 100%;
  height: auto;
  -webkit-border-top-left-radius: 3px;
  -webkit-border-top-right-radius: 3px;
  -moz-border-radius-topleft: 3px;
  -moz-border-radius-topright: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  margin-bottom: 15px;
  position: relative;
}

.opinion .atable .acell .contentbox ul {
  list-style-type: none;
}

.opinion .atable .acell .contentbox ul li a {
  color: white;
  display: block;
  height: 200px;
  max-width: 100%;
  width: 100%;
}

.opinion .atable .acell .contentbox ul li a span {
  position: absolute;
  bottom: 0px;
  left: 0px;
  padding: 10px 10px 20px 10px;
  color: #fff;
  z-index: 10;
  display: inline-block;
  font-size: 1.3em;
  text-shadow: 1px 1px 1px #000;
  -webkit-border-top-left-radius: 4px;
  -moz-border-radius-topleft: 4px;
  border-top-left-radius: 4px;
EN

回答 1

Stack Overflow用户

发布于 2015-12-08 00:51:47

在JavaScript中,字符串中不能包含变量,必须使用+ operator将其添加到字符串中。

代码语言:javascript
复制
slides[i].style.boxShadow = "inset 0 0 0 350px " + color;
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34138862

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档