распечатать гугл карты v3 - PullRequest
1 голос
/ 28 июля 2011

Я пытаюсь создать кнопку, которая будет печатать карту Google, встроенную в веб-страницу

см. Код:

function print(){


var contents = window.opener.document.getElementById("map_canvas"); 
document.write(contents.innerHTML); 
window.print(); 

}

это div, в котором хранится моя карта

<div id="map_canvas" style="width:800px; height:500px;"></div>  

и это кнопка печати

<input type="button" value="Print" onclick="print()">

Когда я нажимаю кнопку печати, я получаю сообщение об ошибке «window.opener is null».Какой правильный код для печати карты?

Ответы [ 3 ]

0 голосов
/ 25 апреля 2013

window.opener возвращает ссылку на окно, которое создало окно. Здесь не нужен window.opener, так как вы не создали никаких новых окон.

Непосредственно используйте window.document.getElementById.

Попробуйте это:

function print(){
    var contents = window.document.getElementById("map_canvas"); 
    document.write(contents.innerHTML); 
    window.print(); 
    }
0 голосов
/ 24 апреля 2015
var content = window.document.getElementById("map-canvas"); // get you map details
var newWindow = window.open(); // open a new window
newWindow.document.write(content.innerHTML); // write the map into the new window
newWindow.print(); // print the new window
0 голосов
/ 03 ноября 2011

Проверьте, есть ли у DIV, которые содержат карту в главном окне, div с id = "map_canvas"

...