[英]Append html to div javascript and bind typescript function to a (click) event not working
[英]HTML: Div Click function not working (amateaur)
我在腳本中遇到了一個問題:
$('.box').click(function () {$("input[type='image']").click(); });
我希望單擊<p>
元素以從用戶PC上傳圖像文件。 當我使用“括號”編寫代碼時,它還會顯示錯誤:
$
在定義之前就已使用。 use strict
說明。 這是我的代碼。
我在javascript中編碼錯誤嗎? 提前致謝 :)
如果我正確理解您的意見,將會為您提供幫助
<input type="image">
是圖形提交按鈕,而不是文件上傳按鈕
要上傳文件,您需要使用<input type="file">
。
$('div.box').on('click',function() { $("input[type='file']").trigger('click'); });
.pic { height: 638px; width: 938px; background-image: url('https://lh3.googleusercontent.com/sYpfIOEWajHnFESqdf0D4u1Kym0ErKpQ4gDn_Rwkxh3VxOrXw1cKgj-DZaNvVrAHpkhklQHNmBVHLhLbr57Le1699Hiibqm96oC-czexuHcn-LBkx5lKz_y9CQwvh_haCjDis7MDjhCOnIr2NU3eApw4ldE6riAo_PaqCH-oqDB2ZAIsFjiJTOqIEdAFBxSEWXNtVn4UOzqyk3y1ViAAS7XJ6gmxnh4zmVvIcUdzlhEOBKPIWnerm7OMBQ5N6zQK7pvgmHZ-SHEQWTpRN-B9ohdHsy8eHknlw7fYcUtI6JqOAZ0G93TJEuay-CU9WB8_3zf6OJsPpO-bWNa3AxEqeHRfUAHLiarTW_vBviDo6y8cvEIvGxe6OXGojbjSstRWq-Re-oYiZMkDnPuvloXETA7A84U9hGSkKU_eQoIpPhqOUH3diz1u8vVocWts6u7lOiHde7nqgrOEFQt1Cgu3jJaJ7oAzVEHeNWg7EhLQL33RQJEhL8p1R8X70QMttUkLEZjSVFNdSRKxEC7YZIj9gJel04Qz2Q8jwd3qcHZNaANwKI8TdAS0hWzDoPgWp1nATDM-Vx775-4Mpo7hR2Dr3hBR1ougQRm5p0-Rlqdft1gtqaM1JWfMr-TCfJE09ceJfUzGqR3Wfmr519NDpK_x317gh0_Z8kB8MwvYBKZS-g=w958-h638-no'); background-repeat: no-repeat; } .box { float: left; width: 100px; height: 100px; background-color: #FFF; -webkit-filter: blur(0); transform: matrix3d(3.356071, -0.24874, 0, 0.002092, 0.702007, 2.436204, 0, -0.000061, 0, 0, 1, 0, 61, 147, 0, 1); transform-origin: 0px 0px 0px; cursor: pointer; border:2px solid red; } .box>p { font-family: georgia; line-height: o.45em; font-size: 12px; text-align: center; } #upload { display: none; }
<body> <h1>Sample page</h1> <div class="pic"> <input type="file" id="upload" /> <div class="box"> <p>...........</p> <p>Add Screenshot</p> <p>within this</p> <p>red border</p> <p>...........</p> </div> </div> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <script src='java.js'></script> </body>
@根據評論更新:-
當您將$("p")
更改$("p")
$(".box")
,它將創建遞歸調用。 為了避免這種情況,您需要將<input type="file" id="upload" />
放在帶有class box
的div之外。
此外,如果將腳本和鏈接標記放置在文檔中的任何位置,則可以將其放置在body瀏覽器將在加載body元素之前加載腳本的位置之前,並將其放置在body標記之后
推薦的方式是在正文之后加載腳本,因為它將在加載腳本之前將所有元素加載到DOM,這將提高網頁性能,並且還將減少導致加載前引用DOM元素的沖突。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.