123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547 |
- /**
- * Make sure the charset of the page using this script is
- * set to utf-8 or you will not get the correct results.
- */
- var utf8 = (function () {
- var highSurrogateMin = 0xd800,
- highSurrogateMax = 0xdbff,
- lowSurrogateMin = 0xdc00,
- lowSurrogateMax = 0xdfff,
- surrogateBase = 0x10000;
-
- function isHighSurrogate(charCode) {
- return highSurrogateMin <= charCode && charCode <= highSurrogateMax;
- }
-
- function isLowSurrogate(charCode) {
- return lowSurrogateMin <= charCode && charCode <= lowSurrogateMax;
- }
-
- function combineSurrogate(high, low) {
- return ((high - highSurrogateMin) << 10) + (low - lowSurrogateMin) + surrogateBase;
- }
-
- /**
- * Convert charCode to JavaScript String
- * handling UTF16 surrogate pair
- */
- function chr(charCode) {
- var high, low;
-
- if (charCode < surrogateBase) {
- return String.fromCharCode(charCode);
- }
-
- // convert to UTF16 surrogate pair
- high = ((charCode - surrogateBase) >> 10) + highSurrogateMin,
- low = (charCode & 0x3ff) + lowSurrogateMin;
-
- return String.fromCharCode(high, low);
- }
-
- /**
- * Convert JavaScript String to an Array of
- * UTF8 bytes
- * @export
- */
- function stringToBytes(str) {
- var bytes = [],
- strLength = str.length,
- strIndex = 0,
- charCode, charCode2;
-
- while (strIndex < strLength) {
- charCode = str.charCodeAt(strIndex++);
-
- // handle surrogate pair
- if (isHighSurrogate(charCode)) {
- if (strIndex === strLength) {
- throw new Error('Invalid format');
- }
-
- charCode2 = str.charCodeAt(strIndex++);
-
- if (!isLowSurrogate(charCode2)) {
- throw new Error('Invalid format');
- }
-
- charCode = combineSurrogate(charCode, charCode2);
- }
-
- // convert charCode to UTF8 bytes
- if (charCode < 0x80) {
- // one byte
- bytes.push(charCode);
- }
- else if (charCode < 0x800) {
- // two bytes
- bytes.push(0xc0 | (charCode >> 6));
- bytes.push(0x80 | (charCode & 0x3f));
- }
- else if (charCode < 0x10000) {
- // three bytes
- bytes.push(0xe0 | (charCode >> 12));
- bytes.push(0x80 | ((charCode >> 6) & 0x3f));
- bytes.push(0x80 | (charCode & 0x3f));
- }
- else {
- // four bytes
- bytes.push(0xf0 | (charCode >> 18));
- bytes.push(0x80 | ((charCode >> 12) & 0x3f));
- bytes.push(0x80 | ((charCode >> 6) & 0x3f));
- bytes.push(0x80 | (charCode & 0x3f));
- }
- }
-
- return bytes;
- }
- /**
- * Convert an Array of UTF8 bytes to
- * a JavaScript String
- * @export
- */
- function bytesToString(bytes) {
- var str = '',
- length = bytes.length,
- index = 0,
- byte,
- charCode;
-
- while (index < length) {
- // first byte
- byte = bytes[index++];
-
- if (byte < 0x80) {
- // one byte
- charCode = byte;
- }
- else if ((byte >> 5) === 0x06) {
- // two bytes
- charCode = ((byte & 0x1f) << 6) | (bytes[index++] & 0x3f);
- }
- else if ((byte >> 4) === 0x0e) {
- // three bytes
- charCode = ((byte & 0x0f) << 12) | ((bytes[index++] & 0x3f) << 6) | (bytes[index++] & 0x3f);
- }
- else {
- // four bytes
- charCode = ((byte & 0x07) << 18) | ((bytes[index++] & 0x3f) << 12) | ((bytes[index++] & 0x3f) << 6) | (bytes[index++] & 0x3f);
- }
-
- str += chr(charCode);
- }
-
- return str;
- }
-
- return {
- stringToBytes: stringToBytes,
- bytesToString: bytesToString
- };
- }());
- 'use strict';
- var app = angular.module('app', [
- 'ui.router',
- 'templatescache',
- 'ui.bootstrap',
- 'ngAnimate'
- ]);
- angular.module('app').run(['$rootScope', '$state', '$stateParams',
- function($rootScope, $state, $stateParams) {
- $rootScope.$state = $state;
- $rootScope.$stateParams = $stateParams;
- }
- ]).config(['$stateProvider', '$urlRouterProvider',
- function($stateProvider, $urlRouterProvider) {
- $urlRouterProvider.otherwise('/home'); //
- $stateProvider.state('home', {
- url: '/home',
- templateUrl: 'templates/home.html',
- controller: 'HomeController'
- })
- .state('webChat', {
- url: '/webChat',
- templateUrl: 'templates/webChat.html',
- controller: 'WebController'
- })
- .state('webChat.conComplain', {
- url: '/conComplain',
- templateUrl: 'templates/webChat-1.html',
- controller: 'WebController'
- })
- .state('webChat.queryEv', {
- url: '/queryEv',
- templateUrl: 'templates/webChat-2.html',
- controller: 'WebController'
- })
- .state('webChat.dyInfo', {
- url: '/dyInfo',
- templateUrl: 'templates/webChat-3.html',
- controller: 'WebController'
- })
- .state('webChat.phoneLogin', {
- url: '/phoneLogin',
- templateUrl: 'templates/webChat-4.html',
- controller: 'WebController'
- }).state('webChat.online', {
- url: '/online',
- templateUrl: 'templates/webChat-5.html',
- controller: 'WebController'
- });
- }
- ]);
- angular.module('templatescache', []).run(['$templateCache', function($templateCache) {$templateCache.put('templates/home.html','<div class="main">\r\n <header>\r\n <!--<div class="header111">\r\n <img src="../img/webChatImg/banner.png" alt="">\r\n </div>-->\r\n <!-- <div class="swiper-container">\r\n <div class="swiper-wrapper">\r\n <div class="swiper-slide"><img src="../img/webChatImg/banner.png" alt=""></div>\r\n <div class="swiper-slide"><img src="../img/webChatImg/banner.png" alt=""></div>\r\n <div class="swiper-slide"><img src="../img/webChatImg/banner.png" alt=""></div>\r\n </div>\r\n <!-- \u5982\u679C\u9700\u8981\u5206\u9875\u5668 -->\r\n <!-- <div class="swiper-pagination"></div> -->\r\n <!-- \u5982\u679C\u9700\u8981\u5BFC\u822A\u6309\u94AE -->\r\n <!--<div class="swiper-button-prev"></div>\r\n <div class="swiper-button-next"></div>-->\r\n <!-- \u5982\u679C\u9700\u8981\u6EDA\u52A8\u6761 -->\r\n <!--<div class="swiper-scrollbar"></div>-->\r\n <!-- </div> -->\r\n\r\n </header>\r\n\r\n <content>\r\n <div>\r\n </div>\r\n </content>\r\n\r\n <footer class="foot">\r\n <div class="footinfo">\r\n <div ui-sref=".conComplain" ng-click="actived($event)">\r\n <a class="Aa" href="" style="width:25%"><span class="glyphicon glyphicon-list"></span><br>\u533A\u53BF\u5E02</a>\r\n </div>\r\n <div ui-sref=".queryEv" ng-click="actived($event)">\r\n <a class="Aa" href="" style="width:25%"><span class="glyphicon glyphicon-search"></span><br>\u641C\u7D22\u4E8B\u9879</a>\r\n </div>\r\n <div ui-sref=".comConsult" ng-click="actived($event)">\r\n <a class="Aa" href="" style="width:25%"><span class="glyphicon glyphicon-list-alt"></span><br>\u670D\u52A1\u4E8B\u9879</a>\r\n </div>\r\n <div ui-sref=".dyInfo" ng-click="actived($event)">\r\n <a class="Aa" href="" style="width:25%"><span class="glyphicon glyphicon-fire"></span><br>\u6700\u591A\u8DD1\u4E00\u6B21</a>\r\n </div>\r\n </div>\r\n </footer>\r\n\r\n\r\n\r\n\r\n\r\n <!-- <div class="modal fade errorLogin" id="errorLoginModal" tabindex="-2" data-backdrop="static" role="dialog" aria-labelledby="errorLoginModalLabel" aria-hidden="true">\r\n <div class="modal-info">\r\n <p>{{addr.regeocode.addressComponent.district}}\u6682\u4E0D\u652F\u6301\u6B64\u529F\u80FD</p>\r\n <a href="" data-dismiss="modal">\u5173 \u95ED</a>\r\n </div>\r\n </div>\r\n <div class="modal fade phoneLogin" id="phoneLoginModal" tabindex="-2" data-backdrop="static" role="dialog" aria-labelledby="phoneLoginModalLabel" aria-hidden="true">\r\n <div class="modal-info">\r\n <p>\u8BF7\u8F93\u5165\u624B\u673A\u53F7\u7801</p>\r\n <input class="form-control input-sm" type="text" ng-model="mobile">\r\n <a ng-click="onlineService()">\u786E \u5B9A</a>\r\n <a href="" data-dismiss="modal">\u5173 \u95ED</a>\r\n </div>\r\n </div> -->\r\n</div>');
- $templateCache.put('templates/webChat-1.html','<div class="ui-webView">\r\n <div class="header">\r\n <span onClick="javascript :history.back(-1);" class="glyphicon glyphicon-arrow-left"></span><span>\u54A8\u8BE2\u6295\u8BC9</span><span ui-sref="home" class="glyphicon glyphicon-home"></span>\r\n </div>\r\n <div class="webContent-1">\r\n <div class="webImg-1">\r\n </div>\r\n\r\n <div class="circular" id="1">\r\n <span> <p>\u54A8\u8BE2\u6295\u8BC9</p> </span>\r\n </div>\r\n\r\n <div class="web-button">\r\n <div style="height:50px"></div>\r\n <a href="tel:12345">\r\n <button type="button" class="btn btn-block">\r\n \r\n <span class="glyphicon glyphicon-comment" aria-hidden="true"></span>\r\n <p>\u4EBA\u5DE5\u5BA2\u670D</p> \r\n </button>\r\n </a>\r\n <a href="https://zjwskj.qiyukf.com/client?k=e52a7ac21a88369ef6c38c56b54c810e&wp=1" target="_blank">\r\n <button type="button" class="btn btn-block">\r\n <span class=" glyphicon glyphicon-phone-alt" aria-hidden="true"></span>\r\n <p>\u5728\u7EBF\u54A8\u8BE2</p>\r\n \r\n </button>\r\n </a>\r\n <button type="button" class="btn btn-block" ui-sref="webChat.online">\r\n <span class="glyphicon glyphicon-globe" aria-hidden="true"></span>\r\n <p>\u7F51\u4E0A\u6295\u8BC9</p> \r\n </button>\r\n </div>\r\n </div>\r\n</div>');
- $templateCache.put('templates/webChat-2.html','<div class="ui-webView">\r\n <div class="header">\r\n <span onClick="javascript :history.back(-1);" class="glyphicon glyphicon-arrow-left"></span><span>\u67E5\u8BE2\u8BC4\u4EF7</span><span ui-sref="home" class="glyphicon glyphicon-home"></span>\r\n </div>\r\n <div class="webContent-1">\r\n <div class="webImg-1">\r\n </div>\r\n\r\n <div class="circular" id="color2">\r\n <span> <p>\u67E5\u8BE2\u8BC4\u4EF7</p> </span>\r\n </div>\r\n\r\n <div class="web-button" id="btn2">\r\n <div style="height:50px"></div>\r\n <button type="button" class="btn btn-block">\r\n <span class="glyphicon glyphicon-phone" aria-hidden="true"></span>\r\n <p>\u624B\u673A\u53F7\u67E5\u8BE2</p> \r\n </button>\r\n <button type="button" class="btn btn-block">\r\n <span class="glyphicon glyphicon-barcode" aria-hidden="true"></span>\r\n <p>\u67E5\u8BE2\u7801\u67E5\u8BE2</p> \r\n </button>\r\n </div>\r\n </div>\r\n</div>');
- $templateCache.put('templates/webChat-3.html','<div class="ui-webView">\r\n <div class="header">\r\n <span onClick="javascript :history.back(-1);" class="glyphicon glyphicon-arrow-left"></span><span>\u52A8\u6001\u4FE1\u606F</span><span ui-sref="home" class="glyphicon glyphicon-home"></span>\r\n </div>\r\n <div class="webContent-1">\r\n <div class="webImg-1">\r\n </div>\r\n\r\n <div class="circular" id="color3">\r\n <span> <p>\u52A8\u6001\u4FE1\u606F</p> </span>\r\n </div>\r\n\r\n <div class="web-button" id="btn3">\r\n <div style="height:50px"></div>\r\n <button type="button" class="btn btn-block">\r\n <span class="glyphicon glyphicon-comment" aria-hidden="true"></span>\r\n <p>\u5E73\u53F0\u7B80\u4ECB</p> \r\n </button>\r\n <button type="button" class="btn btn-block">\r\n <span class=" glyphicon glyphicon-phone-alt btn3-2" aria-hidden="true"></span>\r\n <p>\u9886\u5BFC\u63A5\u542C\u9884\u544A</p> \r\n </button>\r\n <button type="button" class="btn btn-block">\r\n <span class="glyphicon glyphicon-globe" aria-hidden="true"></span>\r\n <p>\u5DE5\u4F5C\u52A8\u6001</p> \r\n </button>\r\n </div>\r\n </div>\r\n</div>');
- $templateCache.put('templates/webChat-4.html','');
- $templateCache.put('templates/webChat-5.html','<div class="header">\r\n <span onClick="javascript :history.back(-1);" class="glyphicon glyphicon-arrow-left"></span><span>\u7F51\u4E0A\u4FE1\u7BB1</span><span ui-sref="home" class="glyphicon glyphicon-home"></span>\r\n</div>\r\n<div class="webContent-2" ng-click="footShow($event)">\r\n <!--<div class="webimg-2">\r\n <img src="../img/\u4ED9\u5BAB\u6E56.jpg">\r\n </div>-->\r\n\r\n <div class="userInfo">\r\n <div><span>\u59D3      \u540D\uFF1A</span><input class="form-control input-sm" type="text" placeholder="\u5355\u884C\u8F93\u5165" ng-focus="footHide()"><span class="certificate">*</span></div>\r\n <div><span>\u624B\u673A\u53F7\u7801\uFF1A</span><input class="form-control input-sm" type="text" placeholder="\u5355\u884C\u8F93\u5165" ng-focus="footHide()"><span class="certificate">*</span></div>\r\n <div><span>\u6295\u8BC9\u5185\u5BB9\uFF1A</span>\r\n <div class="text-message" contenteditable="plaintext-only" ng-focus="footHide()"></div><span class="certificate">*</span>\r\n </div>\r\n <div class="image"><span>\u56FE      \u7247\uFF1A</span>\r\n <div id="imgpreview">\r\n </div>\r\n <button type="button" class="btn btn-primary"><span class="glyphicon glyphicon-open"></span></button>\r\n <input id="file" type="file" name="file" multiple="multiple" onchange=\'angular.element(this).scope().imgPreview(this)\' />\r\n </div>\r\n <div><span>\u6240\u5728\u4F4D\u7F6E\uFF1A</span>\r\n <div style="height:25px"></div>\r\n <div class="text-map">\r\n <gaode-map options="mapOptions" style="height:150px"></gaode-map>\r\n </div>\r\n </div>\r\n <div class="button-bottom">\r\n <button type="button" class="btn btn-default" ng-click="pageChange()">\u63D0\u4EA4</button>\r\n </div>\r\n <div class="modal fade viewModal" id="viewModal" tabindex="-2" data-backdrop="static" role="dialog" aria-labelledby="viewModalLabel" aria-hidden="true">\r\n <button type="button" class="close" aria-hidden="true" ng-click="delImg()"><span class="glyphicon glyphicon-trash"></span></button>\r\n <a class="thumbnail image-view"></a>\r\n <div class="modal-info" ng-show="sure">\r\n <p>\u786E\u5B9A\u5220\u9664\uFF1F</p>\r\n <button type="button" class="btn btn-success" data-dismiss="modal" ng-click="delSure()">\u786E\u5B9A</button>\r\n <button type="button" class="btn btn-success" ng-click="sure=flase">\u53D6\u6D88</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>');
- $templateCache.put('templates/webChat.html','<header>\r\n</header>\r\n<content ui-view class="fade-in-right-big"></content>\r\n\r\n<footer class="foot">\r\n</footer>');}]);
- (function() {
- 'use strict';
- angular
- .module('app')
- .directive('gaodeMap', Directive);
- Directive.$inject = [];
- function Directive() {
- var directive = {
- link: link,
- restrict: 'E',
- template: '<div id="container"></div>',
- replace: true,
- scope: {
- options: '='
- }
- };
- return directive;
- function link($scope, element, attrs) {
- var map, geolocation, marker, geocoder;
- //加载地图,调用浏览器定位服务
- map = new AMap.Map('container', {
- resizeEnable: true,
- zoom: 17
- });
- map.plugin('AMap.Geolocation', function() {
- geolocation = new AMap.Geolocation({
- enableHighAccuracy: true, //是否使用高精度定位,默认:true
- timeout: 10000, //超过10秒后停止定位,默认:无穷大
- maximumAge: 0, //定位结果缓存0毫秒,默认:0
- convert: true, //自动偏移坐标,偏移后的坐标为高德坐标,默认:true
- showButton: true, //显示定位按钮,默认:true
- buttonPosition: 'RB', //定位按钮停靠位置,默认:'LB',左下角
- buttonOffset: new AMap.Pixel(10, 20), //定位按钮与设置的停靠位置的偏移量,默认:Pixel(10, 20)
- showMarker: true, //定位成功后在定位到的位置显示点标记,默认:true
- showCircle: true, //定位成功后用圆圈表示定位精度范围,默认:true
- panToLocation: true, //定位成功后将定位到的位置作为地图中心点,默认:true
- zoomToAccuracy: true, //定位成功后调整地图视野范围使定位位置及精度范围视野内可见,默认:false
- useNative: true
- });
- map.addControl(geolocation);
- geolocation.getCurrentPosition();
- // AMap.event.addListener(geolocation, 'complete', function(ret) {
- // console.log(ret.message);
- // }); //返回定位信息
- // AMap.event.addListener(geolocation, 'error', function(ret) {
- // console.log(ret.message);
- // }); //返回定位出错信息
- // marker = new AMap.Marker({
- // map: map,
- // bubble: true,
- // content: '<div class="marker-route marker-marker-bus-from"></div>' //自定义点标记覆盖物内容,
- // });
- // marker.setLabel({
- // offset: new AMap.Pixel(20, 0),
- // content: "我在这里"
- // });
- // //geocoder = new AMap.Geocoder({});
- // map.on('click', function(e) {
- // marker.setPosition(e.lnglat);
- // geocoder.getAddress(e.lnglat, function(status, result) {
- // if (status == 'complete') {
- // document.getElementById('input').value = result.regeocode.formattedAddress
- // }
- // });
- // });
- });
- // $scope.$watch("options", function(newValue, oldValue) {
- // if ($scope.options) {
- // map.setCenter([$scope.options.lng, $scope.options.lat]);
- // marker.setPosition([$scope.options.lng, $scope.options.lat]);
- // }
- // }, true);
- }
- }
- })();
- 'use strict';
- angular.module('app').controller('HomeController', ['$scope', '$state', '$timeout', function($scope, $state, $timeout) {
- $scope.getAddSuccess = true;
- $scope.$on('$viewContentLoaded', function() {
- //加载轮播
- var swiper = new Swiper('.swiper-container', {
- pagination: '.swiper-pagination',
- paginationClickable: true,
- loop: true,
- autoplayDisableOnInteraction: false,
- autoplay: 5000,
- effect: 'coverflow',
- slidesPerView: 'auto',
- centeredSlides: true,
- spaceBetween: -55,
- coverflow: {
- rotate: 30,
- stretch: 0,
- depth: 60,
- modifier: 1,
- slideShadows: false
- }
- });
- //加载字体适应
- var clientWidth = document.documentElement.clientWidth || window.innerWidth;
- var innerWidth = Math.max(Math.min(clientWidth, 480), 320);
- console.log(innerWidth);
- if (innerWidth < 350) {
- angular.element(".explain").removeClass("font-15");
- angular.element(".explain").addClass("font-12");
- } else if (innerWidth > 400) {
- angular.element(".explain").removeClass("font-12");
- angular.element(".explain").addClass("font-15");
- }
- //加载地图,调用浏览器定位服务
- var map, geolocation, marker, geocoder, regeocoder;
- map = new AMap.Map('', {
- resizeEnable: true,
- zoom: 17
- });
- map.plugin('AMap.Geolocation', function() {
- geolocation = new AMap.Geolocation({
- enableHighAccuracy: true, //是否使用高精度定位,默认:true
- timeout: 10000, //超过10秒后停止定位,默认:无穷大
- maximumAge: 0, //定位结果缓存0毫秒,默认:0
- convert: true, //自动偏移坐标,偏移后的坐标为高德坐标,默认:true
- showButton: true, //显示定位按钮,默认:true
- buttonPosition: 'RB', //定位按钮停靠位置,默认:'LB',左下角
- buttonOffset: new AMap.Pixel(10, 20), //定位按钮与设置的停靠位置的偏移量,默认:Pixel(10, 20)
- showMarker: true, //定位成功后在定位到的位置显示点标记,默认:true
- showCircle: true, //定位成功后用圆圈表示定位精度范围,默认:true
- panToLocation: true, //定位成功后将定位到的位置作为地图中心点,默认:true
- zoomToAccuracy: true, //定位成功后调整地图视野范围使定位位置及精度范围视野内可见,默认:false
- useNative: true
- });
- map.addControl(geolocation);
- geolocation.getCurrentPosition();
- AMap.event.addListener(geolocation, 'complete', onComplete); //返回定位信息
- AMap.event.addListener(geolocation, 'error', onError); //返回定位出错信息
- function onComplete(data) {
- $scope.getAddSuccess = true;
- var geocoder = new AMap.Geocoder({
- radius: 1000,
- extensions: "all"
- });
- console.log("获取地址");
- geocoder.getAddress(data.position, function(status, result) {
- if (status === 'complete' && result.info === 'OK') {
- $scope.addr = result;
- $timeout();
- }
- });
- };
- function onError(data) {
- $scope.getAddSuccess = false;
- };
- });
- });
- $scope.onOnlineClick = function(e) {
- $scope.mobile = "";
- var activeClick = $(e.target);
- console.log(activeClick);
- if (!$scope.getAddSuccess) {
- alert("获取地址失败,请开启手机GPS定位功能,并允许获取地理位置授权");
- window.location.reload();
- } else if (!$scope.addr && $scope.getAddSuccess) {
- alert("地理位置获取中,请稍后");
- } else if ($scope.addr.regeocode.addressComponent.district === '莲都区') {
- //activeClick[0].parentElement.parentElement.dataset.target = "#phoneLoginModal";
- activeClick[0].parentElement.dataset.target = "#phoneLoginModal";
- } else {
- //activeClick[0].parentElement.parentElement.dataset.target = "#errorLoginModal";
- activeClick[0].parentElement.dataset.target = "#errorLoginModal";
- }
- };
- $scope.onlineService = function() {
- console.log($scope.mobile.length);
- if ($scope.mobile.length == 11) {
- ysf.config({
- mobile: $scope.mobile,
- success: function() { // 成功回调
- ysf.open();
- },
- error: function() { // 错误回调
- // handle error
- ysf.open();
- }
- });
- } else {
- alert("请正确输入手机号码");
- }
- };
- }]);
- 'use strict';
- angular.module('app').controller('WebController', ['$scope', '$timeout', function($scope, $timeout) {
- //lxtalkClient.Invoke('{FB60F992-A0FD-47B3-AAA7-E80DF209C5A4}', '_Register', '', $scope);
- $scope.$on('$viewContentLoaded', function() {
- var clientWidth = document.documentElement.clientWidth || window.innerWidth;
- var innerWidth = Math.max(Math.min(clientWidth, 480), 320);
- console.log(innerWidth);
- if (innerWidth > 350) {
- angular.element(".userInfo>div>span").addClass("font-14");
- angular.element(".certificate").addClass("font-14");
- angular.element(".userInfo .input-sm ").addClass("font-13");
- angular.element(".userInfo .text-message").addClass("font-13");
- } else {
- angular.element(".font-13").removeClass("font-13");
- angular.element(".font-14").removeClass("font-14");
- }
- });
- $scope.imgView = function(event) {
- angular.element(".onView").removeClass("onView");
- var img = $(event.target);
- img[0].className = "onView";
- if (img[0].naturalWidth > img[0].naturalHeight) {
- angular.element(".image-view").addClass("width-Img");
- } else {
- angular.element(".image-view").removeClass("width-Img");
- }
- $scope.imgUrl = img[0].src;
- $(".image-big").remove();
- $(".image-view").append('<img class="image-big" src="' + $scope.imgUrl + '" data-dismiss="modal">');
- };
- $scope.delSure = function() {
- $scope.sure = false;
- // var activeClick = $($event.target);
- // console.log(activeClick);
- // var imgUrl = activeClick[0].parentElement.previousElementSibling.firstElementChild.src;
- var imgs = $(".images");
- $(".image-big").remove();
- for (var i = 0, len = imgs.length; i < len; i++) {
- if ($(".images")[i].firstElementChild.className == "onView") {
- $(".images")[i].remove();
- var imgNum = $("#imgpreview").find('img').length;
- if (imgNum == 2) {
- angular.element(".images").removeClass("three");
- angular.element(".images").addClass("two");
- } else if (imgNum = 1) {
- angular.element(".images").removeClass("two");
- angular.element(".images").addClass("one");
- }
- return;
- }
- };
- };
- $scope.delImg = function() {
- $scope.sure = true;
- };
- $scope.actived = function($event) {
- var activeClick = $($event.target);
- if (activeClick[0].nodeName == "A") {
- angular.element(".Aa").removeClass("activeColor");
- angular.element(".glyphicon").removeClass("activeColor");
- activeClick.addClass("activeColor");
- } else if (activeClick[0].nodeName == "SPAN") {
- angular.element(".Aa").removeClass("activeColor");
- angular.element(".glyphicon").removeClass("activeColor");
- activeClick.addClass("activeColor");
- $(activeClick[0].parentElement).addClass("activeColor");
- }
- };
- $scope.footHide = function() {
- angular.element(".foot").addClass("hide");
- };
- $scope.footShow = function($event) {
- var activeClick = $($event.target);
- if (activeClick[0].className == "form-control input-sm" || activeClick[0].className == "text-message") {
- angular.element(".foot").addClass("hide");
- } else {
- $timeout(function() {
- angular.element(".foot").removeClass("hide");
- }, 400);
- }
- };
- $scope.imgPreview = function(fileDom) {
- //判断是否支持FileReader
- if (window.FileReader) {
- var reader = new FileReader();
- } else {
- alert("您的设备不支持图片预览功能,如需该功能请升级您的设备!");
- };
- //获取文件
- var file = fileDom.files[0];
- var imageType = /^image\//;
- //是否是图片
- if (!imageType.test(file.type)) {
- alert("请选择图片!");
- return;
- };
- $("#file")[0].value = "";
- //读取完成
- reader.onload = function(e) {
- // //获取图片dom
- // var img = document.getElementById("preview");
- // //图片路径设置为读取的图片
- // img.src = e.target.result;
- var img = new Image,
- width = 1080, //image resize
- quality = 0.9, //image quality
- canvas = document.createElement("canvas"),
- drawer = canvas.getContext("2d");
- img.src = this.result;
- if (img.src) {
- var imgNum = $("#imgpreview").find('img').length;
- canvas.width = width;
- canvas.height = width * (img.height / img.width);
- drawer.drawImage(img, 0, 0, canvas.width, canvas.height);
- img.src = canvas.toDataURL("image/jpeg", quality);
- if (imgNum == 0) {
- $("#imgpreview").append('<a data-toggle="modal" data-target="#viewModal" class="thumbnail images"><img onClick="angular.element(this).scope().imgView(event)" src="' + img.src + '"></a>');
- angular.element(".images").addClass("one");
- } else if (imgNum == 1) {
- $("#imgpreview").append('<a data-toggle="modal" data-target="#viewModal" class="thumbnail images"><img onClick="angular.element(this).scope().imgView(event)" src="' + img.src + '"></a>');
- angular.element(".images").removeClass("one");
- angular.element(".images").addClass("two");
- } else if (imgNum >= 2) {
- $("#imgpreview").append('<a data-toggle="modal" data-target="#viewModal" class="thumbnail images"><img onClick="angular.element(this).scope().imgView(event)" src="' + img.src + '"></a>');
- angular.element(".images").removeClass("two");
- angular.element(".images").addClass("three");
- }
- };
- };
- reader.readAsDataURL(file);
- };
- }]);
|