關於自定義乙個上傳的file按鈕

2022-05-17 21:03:41 字數 1410 閱讀 1107

在input中html給我們乙個 type  file用來做檔案上傳的功能,比如

但是這樣的樣式,實在難看,在開發的時候看了layui和bootstrap的點選上傳,都很不錯。

前者的呼叫方式和js的差別太大,後者需要引入bootstrap fileinput.js 我都不是很滿意,

後來寫了乙個原生的js來呼叫,話說我還是引用了layui的css樣式,因為確實不錯

看下**

1

<

input

type

="file"

onchange

="upload()"

style

="display:none"

id="file-input"

/>

2<

button

onclick

='selectfile()'

>上傳

button

>

這是沒有引入layui的類之前的html,他的input type file是預設隱藏的,我們可以在

按鈕上模擬input的點選事件

var inputbox = document.getelementbyid("file-input");

function

selectfile()

點選之後,input就相當於被點選,開始上傳檔案,當上傳檔案的時候,input上繫結的onchange();就開始生效了

這是乙個載入的函式

}在open方法中定義上傳的介面,返回資料為responsetext 

載入資料的時候,繫結乙個進度的事件,可以由e.loaded/e.total*100+"%"得到當前的進度(百分數)

最後傳值

自定義乙個死鎖

在鎖o1釋放之前需要等待鎖o2的釋放 在鎖o2釋放之前需要等待鎖o1的釋放.死在無限等待對方釋放鎖的迴圈中.這只是乙個簡單的死鎖 a需要b,b需要a 複雜一些的有 a需要b,b需要c,c需要a.public class demo6 implements runnable catch interrup...

自定義乙個TagLayout

自定義乙個標籤自動排版顯示的布局。效果 思路 一 確定布局的寬,高。寬度確定 所有行中,寬度最寬的行即為這個布局的寬。高度確定 所有行的高度加起來 即 為這個布局的高度。二 擺放子view思路 如果能夠確定每乙個child的 right 和 bottom 或者 left,top,那麼就可以遍歷每乙個...

實現乙個自定義元件

如果要建立乙個自定義元件,你需要重寫uicomponent類的某些方法,最少需要重寫如下方法 建構函式,createchildren commitproperties measure layoutchrome updatedisplaylist 基礎語句結構如下 package mycomponen...