実現したいこと
特定の要素(ボタン)をクリックした際にprint.cssを追加したい
発生している問題・エラーメッセージ
jqueryにて実装予定で、
現在のコードではFireFoxでは正常に動作するが、
Chorme,Edgeブラウザだと動作しない。
(Print.cssが追加されない)
該当のソースコード
html
1<div id="main_container"> 2 <div id="container_box" class="container01 contents01"> 3 <div class="price_title"><h3>価格</h3></div> 4 <div id="form" class="form_item"> 5 <h3>フォーム名</h3> 6 <h3>自動見積もり</h3> 7 <div class="mitumori_head"> 8 <h4 class="mitumori_head_title">タイトル</h4> 9 <div class="mitumori_txt"> 10 <p>このお見積りは当社WEBシステムによってお客様がご入力された内容を自動で計算した内容です。</p> 11 <p>ご正式な注文内容によっては料金が変更する場合が御座います。</p> 12 </div> 13 </div> 14 <div class="mitumori_item"> 15 <h4 class="price_total_t">合計金額:10000円</h4> 16 <div id="print-btn">この見積の内容を印刷する</div> 17 </div> 18 </div> 19 </div> 20</div>
js
1// 見積印刷用CSSを追加 2$(function() { 3 var printCSS = '<link rel="stylesheet" href="print.css" type="text/css" media="print">'; 4 5 // ボタンがクリックされたら印刷用CSSを追加 6 $('#print-btn').click(function() { 7 $('head').append(printCSS); 8 window.print(); 9 }); 10}); 11 12$(window).on('afterprint', function() { 13 $('link[href="print.css"]').remove(); 14});
css
1.price_title, #print-btn { 2 display:none; 3} 4.mitumori_head { 5 display:block; 6 text-align: center; 7}
試したこと
<div id="print-btn">を<buttom>に変更する等ためしましたが、 Firefox以外のChorme,Edgeでは依然として動作しない。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。