Как напечатать все кадры внутри frameset/nested frameset с помощью JavaScript

У меня есть вложенный набор фреймов, и мне нужно распечатать все фреймы с помощью одной кнопки печати, я искал и пробовал много решений, о которых упоминал, но все же у меня проблема с IE 11. Любой из них может помочь мне, пожалуйста. мой код здесь.---Главная страница

<html>
<frameset rows="10%,*">
   <frame name="top_frame" src="top-frame.htm" frameborder="1" noresize="0" scrolling="no">
   <frameset cols="20%,*">
      <frame name="left_frame" src="left-frame.htm" frameborder="0" noresize="0" scrolling="no">
      <frame name="right_frame" src="right-frame.htm" frameborder="0" noresize="0" scrolling="auto">
   </frameset>
</frameset>
</html>

--- сверху frame.htm:

<html>
<body>
   <div id="app_banner" style="width:50%; border:1px solid #000; height:50px; padding:2px 10px;">
     <span id="app_provider">Company Name</span>
     <input style="float:right" type="button" value="Print" onclick="javascript:window.print();">
   </div>
</body>
</html>

--- левый frame.htm:

<html>
<head>
</head>
<body>
<table border="1">
  <tr><td>test left</td><td>123</td></tr>
  <tr><td>test left</td><td>352</td></tr>
  <tr><td>test left</td><td>542</td></tr>
  <tr><td>test left</td><td>2345</td></tr>
  <tr><td>test left</td><td>5432</td></tr>
</table>
</body>
</html>

--- правой frame.html:

<html>
<head>
</head>
<body>
    <table border="2">
        <tr><td>test right</td><td>1234</tr>
        <tr><td>test right</td><td>4321</td></tr>
        <tr><td>test right</td><td>5678</td></tr>
        <tr><td>test right</td><td>8765</td></tr>
        <tr><td>test right</td><td>345</td></tr>
    </table>
    </body>
</html>

когда я нажимаю кнопку печати, он просто печатает "top-frame.htm" не все кадры. Мне нужно распечатать все кадры.

Примечание: я использовал parent.print(), top.window.print(), focus перед печатью и parent['top_frame'] также, но он работает в Chrome, а не в IE11, который мои клиенты используют IE.

0 ответов

Другие вопросы по тегам