首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >打印时加载磁贴的问题

打印时加载磁贴的问题
EN

Stack Overflow用户
提问于 2017-08-25 18:56:53
回答 1查看 219关注 0票数 1

我有一个我不明白的问题。我有两个容器,每个容器都包含一张地图。我的目标是能够打印它们,为了做到这一点,我使用了window.print(),但是当我移动到打印布局时,这些块并没有被加载。如果你知道发生了什么事,请告诉我。

代码语言:javascript
运行
复制
var map1;
  var map2;
  $(document).ready(function(){
      map1 = L.map( 'map1', {
      center: [33.960057, -6.916462],
      minZoom: 2,
      zoom: 14,
      zoomControl: true
      });
      L.tileLayer("https://stamen-tiles-c.a.ssl.fastly.net/terrain-labels/{z}/{x}/{y}.png",{opacity:0.7}).addTo( map1 );
      L.tileLayer("http://c.tile.stamen.com/watercolor/{z}/{x}/{y}.jpg",{opacity:0.7}).addTo( map1 );

      map2 = L.map( 'map2', {
      center: [33.960057, -6.916462],
      minZoom: 2,
      zoom: 14,
      zoomControl: true
      });
      L.tileLayer("https://stamen-tiles-c.a.ssl.fastly.net/terrain-labels/{z}/{x}/{y}.png",{opacity:0.7}).addTo( map2 );
      L.tileLayer("http://c.tile.stamen.com/watercolor/{z}/{x}/{y}.jpg",{opacity:0.7}).addTo( map2 );

      map1.on("click",function (e) {
        var center = map1.getCenter();
        map2.flyTo(center);
      });
      window.print();


    });
代码语言:javascript
运行
复制
  html, body{
  width: 100% !important;
  height: 100% !important;
  padding:0;
  position: relative;
  margin: 0px;
  overflow: hidden;
  }
  #map1, #map2{
    height : 100%;
    position: relative;
    z-index: 500;
    border-radius: 10px;
  }
  @media print {
  @page {
   size: landscape;
  }

  body *{
    -webkit-print-color-adjust: exact !important;
    color-adjust: exact !important;
    /*color:unset !important;
    color: transparent !important;*/
  }

}
代码语言:javascript
运行
复制
  <body>
    <div class="container" style="height:100%;">
      <div class="row" style="height:100%;">
        <div id="map1"class="col-xs-6">

        </div>
        <div id="map2"class="col-xs-6">

        </div>
      </div>
    </div>
  </body>
代码语言:javascript
运行
复制
var map1;
  var map2;
  $(document).ready(function(){
      map1 = L.map( 'map1', {
      center: [33.960057, -6.916462],
      minZoom: 2,
      zoom: 14,
      zoomControl: true
      });
      L.tileLayer("https://stamen-tiles-c.a.ssl.fastly.net/terrain-labels/{z}/{x}/{y}.png",{opacity:0.7}).addTo( map1 );
      L.tileLayer("http://c.tile.stamen.com/watercolor/{z}/{x}/{y}.jpg",{opacity:0.7}).addTo( map1 );

      map2 = L.map( 'map2', {
      center: [33.960057, -6.916462],
      minZoom: 2,
      zoom: 14,
      zoomControl: true
      });
      L.tileLayer("https://stamen-tiles-c.a.ssl.fastly.net/terrain-labels/{z}/{x}/{y}.png",{opacity:0.7}).addTo( map2 );
      L.tileLayer("http://c.tile.stamen.com/watercolor/{z}/{x}/{y}.jpg",{opacity:0.7}).addTo( map2 );

      map1.on("click",function (e) {
        var center = map1.getCenter();
        map2.flyTo(center);
      });
      window.print();


    });
代码语言:javascript
运行
复制
html, body{
  width: 100% !important;
  height: 100% !important;
  padding:0;
  position: relative;
  margin: 0px;
  overflow: hidden;
  }
  #map1, #map2{
    height : 100%;
    position: relative;
    z-index: 500;
    border-radius: 10px;
  }

  @media print {
  @page {
   size: landscape;
  }

  body *{
    -webkit-print-color-adjust: exact !important;
    color-adjust: exact !important;
    /*color:unset !important;
    color: transparent !important;*/
  }

}
代码语言:javascript
运行
复制
<html>
  <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet">
    <link href="https://fonts.googleapis.com/css?family=Hind+Siliguri" rel="stylesheet">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <script type="text/javascript" src="http://maps.stamen.com/js/tile.stamen.js?v1.3.0"></script>
    <link rel="stylesheet" href="bootstrap.css">
    <link rel="stylesheet" href="print.css">
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
    <link rel="stylesheet" href="https://unpkg.com/leaflet@1.0.3/dist/leaflet.css"
    integrity="sha512-07I2e+7D8p6he1SIM+1twR5TIrhUQn9+I6yjqD53JQjFiMf8EtC93ty0/5vJTZGF8aAocvHYNEDJajGdNx1IsQ=="
    crossorigin=""/>
    <script src="https://unpkg.com/leaflet@1.0.3/dist/leaflet.js"
    integrity="sha512-A7vV8IFfih/D732iSSKi20u/ooOfj/AGehOKq0f4vLT1Zr2Y+RX7C+w8A1gaSasGtRUZpF/NZgzSAu4/Gc41Lg=="
    crossorigin=""></script>
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title></title>
  </head>

 <body>
    <div class="container" style="height:100%;">
      <div class="row" style="height:100%;">
        <div id="map1"class="col-xs-6">

        </div>
        <div id="map2"class="col-xs-6">

        </div>
      </div>
    </div>
  </body>
EN

Stack Overflow用户

发布于 2017-08-25 23:06:44

在另一个post中看到了这一点--有什么帮助吗?“使用Chrome和Safari,您可以将CSS样式-webkit-print-color-adjust: exact;添加到元素,以强制打印背景色和/或图像。”

票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45879834

复制
相关文章

相似问题

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