簡體   English   中英

HTML:Div Click函數不起作用(amateaur)

[英]HTML: Div Click function not working (amateaur)

我在腳本中遇到了一個問題:

$('.box').click(function () {$("input[type='image']").click(); });

我希望單擊<p>元素以從用戶PC上傳圖像文件。 當我使用“括號”編寫代碼時,它還會顯示錯誤:

  1. $在定義之前就已使用。
  2. 缺少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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM