標籤:
以前做的項目,主要是針對ios的,安卓上面也沒有測試。
原理其實是系統內建的功能,那時候借鑒的其他網站,沒有實驗通過document.execCommand("Copy"),別的js方式。
現在手上也沒有裝置了,這邊只是提供html實現的方式。
1.跟網上的部落格介紹的一樣的,要滿足
a.要複製的內容獨佔一行,不要和其他內容在一行(通過相對定位的也不可以)
b.設定-webkit-user-select:initial;
2.ios9下面就是有問題,找了相同項目發現他們都正常的,研究了半天,原來他們是通過在外面遮蓋一個未知的img,alt設定需要複製的內容實現的
下面是主要的html,css,僅供參考
<style>//css.task-key-img { -webkit-user-select: none; z-index: 2; opacity: 0;}.task-key-img, .task-key-shadow { position: absolute; top: 0; display: block; width: 100%; height: 100%; left: 0;}</style>//html<div class="url w100 tac pt6 pb6" style="-webkit-user-select:initial;position:relative;"> <img class="task-key-img" alt="複製的內容" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAIAAAD91JpzAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAFklEQVQImWP8//8/AwMDEwMDAwMDAwAkBgMBmjCi+wAAAABJRU5ErkJggg=="> <div class="task-key-shadow"></div> <span style="-webkit-user-select:initial;font-size: 14px;">複製的內容</span></div>
3.有些推廣的(如錢咖),點按鈕就進行了複製,(是通過app實現的,通過http或這websocket的方式,調用後台啟動並執行鑰匙功能)
ios html5 長按複製文本