-3

2つの異なるスタイルを印刷するために、ここの誰かの助けを借りてこのコードを持っています..問題は、HTMLではなくjavascriptでスクリプトを持っていることです。助けてください

function print(o) {
    var head = document.getElementsByTagName('head')[0].innerHTML;
    if (o == 'client') {
        head += '<link rel="stylesheet" href="../css/style.css" media="screen, projection,print" />';
    }
    if (o == 'member') {
        head += '<link rel="stylesheet" href="../css/style1.css" media="screen, projection,print" />';
    }
    document.getElementsByTagName('head')[0].innerHTML = head;
}

では、HTML はどのようにすべきでしょうか。それは2つのボタンか何かであるはずです...ありがとう

4

2 に答える 2

2

たとえば、次の HTML はコードで動作するはずです。

<button onclick="print('client')">Client</button>
<button onclick="print('member')">Member</button>

ところで、ブラウザのネイティブprint機能を再定義しています。

UPD。パラメータ(または)を使用してprint関数を呼び出す方法が必要なだけです。属性を追加するだけで、この動作を任意の HTML 要素に追加できます (これが最も簡単な方法です)。例: リンクへ:clientmemberonclick

<a onclick="print('client')">Client</a>
<a onclick="print('member')">Member</a>
于 2013-03-07T08:29:42.390 に答える
0
<htmL>
<head>
<script>
  window.onload = function () {
     print("client");
  };

  function print(o) {
         var head  = document.getElementsByTagName('head')[0];
         var link  = document.createElement('link');
         link.rel  = 'stylesheet';
         link.type = 'text/css';
         if (o == 'client') {
           link.href = 'css/style1.css';
         }
         if (o == 'member') {
           link.href = 'css/style2.css';
         }

         link.media = 'screen, projection,print';
         head.appendChild(link);
 }
 </script>
  </head>
  <body>
   <input type="button" name="clientStyle" value="Client Style" onclick="print('client');">
   <input type="button" name="memberStyle" value="Member Style" onclick="print('member');">
  </body>
  </html>

多分.. あなたはこのようにしたいです..?お願いします

于 2013-03-07T08:39:00.373 に答える