AngularJS框架上實現複製連結功能
阿新 • • 發佈:2019-01-03
由於瀏覽器的限制,複製功能無法統一實現,如谷歌瀏覽器更是不支援訪問系統的剪貼簿。
為了在網頁上實現複製功能,我從網上搜了一個方案,利用Flash來做中轉,實現複製功能。步驟如下:
一、前端HTML需要複製的框,以及複製連結按鈕
新增JS引用
<script type="text/javascript" src="/javascripts/jquery.zclip.min.js"></script>
新增地址框、複製按鈕
<input id="url" type="text" class="form-control" style="position:relative; top:0; left:0;height:35px;" placeholder="URL" ng-model="urlAddress">
<button id='copyUrl' class="copyUrl btn" style="position:relative; top:0; left:0; height:35px;" ng-click="copyFunction()">複製連結 </button>
二、這是後臺JS
<span style="white-space:pre"> </span>$(document).ready(function(){ $scope.copyFunction = function(){ $('#copyUrl').zclip({ path: '/public/javascripts/ZeroClipboard.swf', copy: function(){ return angular.element("#url").val(); }, beforeCopy: function(){ }, afterCopy: function(){ } }); } });
三、新增ZeroClipboard.swf檔案,這個檔案網上有很多。App.directive('initzclip', function ($timeout) { return { restrict: 'A', link: function(scope, element, attr) { if (scope.$last === true) { $timeout(function() { scope.$emit('zclipofcopy'); }); } } }; });