headerOpr.js 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. 'use strict';
  2. /**
  3. *
  4. *
  5. * @author Zhong
  6. * @date 2018/11/30
  7. * @version
  8. */
  9. //header相关的公共操作接口
  10. const CommonHeader = (function () {
  11. //帮助-联系客服
  12. const csDom = $('#customerService');
  13. //获取办事处客服列表
  14. //@param {Number}category @return {void}
  15. function getCategoryList(category = -1, titile = '') {
  16. if (titile) {
  17. $('#upgrade-title').text(titile);
  18. }
  19. $.ajax({
  20. type: 'get',
  21. url: '/cld/getCategoryStaff?category=' + category,
  22. dataType: 'json',
  23. timeout: 5000,
  24. success: function (response) {
  25. if (response.error !== 0) {
  26. alert('获取CLD人员信息失败!');
  27. } else {
  28. let staffList = response.data;
  29. let staffhtml = '';
  30. $.each(staffList, function (key, staff) {
  31. staffhtml += '<div class="col-4 mb-4"> ' +
  32. '<div class="card"> ' +
  33. '<div class="card-body"> ' +
  34. '<h4 class="card-title">' + staff.username + '</h4> ' +
  35. '<h6 class="card-subtitle mb-2 text-muted">' + staff.category + '</h6> ' +
  36. '</div> ' +
  37. '<ul class="list-group list-group-flush"> ' +
  38. '<li class="list-group-item" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="腾讯QQ"><a target="_blank" href="http://wpa.qq.com/msgrd?v=3&uin=' + staff.qq + '&site=qq&menu=yes"><img border="0" src="http://wpa.qq.com/pa?p=2:' + staff.qq + ':51" alt="点击这里给我发消息" title="点击这里给我发消息"/></a></li> ' +
  39. '<li class="list-group-item" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="手机号码"><i class="fa fa-tablet"></i> ' + staff.telephone + '</li> ' +
  40. '<li class="list-group-item" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="固定电话"><i class="fa fa-phone"></i> ' + staff.phone + '</li> ' +
  41. '</ul> </div> </div>';
  42. });
  43. $('#staffList').html(staffhtml);
  44. $('#activ').modal('show');
  45. }
  46. },
  47. error: function () {
  48. console.log('请求超时');
  49. }
  50. })
  51. }
  52. // 推荐给朋友
  53. const copyDom = $('#copy_link');
  54. //绑定事件
  55. //@return {void}
  56. function addEventListener(){
  57. csDom.click(function () {
  58. getCategoryList(-1, '联系客服');
  59. });
  60. copyDom.click(function () {
  61. copy('大司空市政云计价,正版软件永久免费\r\nhttps://yun.smartcost.com.cn');
  62. $('#show_share_msg').show();
  63. })
  64. }
  65. //取消浏览器自带右键
  66. //@return {void}
  67. function banNavigatorContextMenu() {
  68. document.oncontextmenu = function(event) {
  69. if (window.event) {
  70. event = window.event;
  71. }
  72. try {
  73. var the = event.srcElement;
  74. if (!((the.tagName == "INPUT" && the.type.toLowerCase() == "text") || the.tagName == "TEXTAREA")) {
  75. return false;
  76. }
  77. return true;
  78. } catch (e) {
  79. return false;
  80. }
  81. }
  82. }
  83. /**
  84. * 复制字符串到剪贴板的函数
  85. * @param {String} value 需要被复制的字符串
  86. * @returns {Boolean} 操作结果
  87. */
  88. function copy(value){
  89. var currentFocus = document.activeElement;// 保存当前活动节点
  90. let input = document.createElement('textarea');// 创建一个texterea标签
  91. document.body.appendChild(input);// 把标签添加给body
  92. input.style.opacity = 0;//设置input标签设置为透明(不可见)
  93. input.value = value;// 把需要复制的值放到input上
  94. // 记录当前滚动位置, 因为添加节点并选中的时候回影响页面滚动
  95. let scrollY = window.scrollY;
  96. input.focus();// input节点获取焦点
  97. input.setSelectionRange(0, input.value.length);// 选中input框中的所有文字
  98. var res = document.execCommand('copy');// 复制文字并获取结果
  99. currentFocus.focus();// 之前活动节点获得焦点
  100. document.body.removeChild(input);// 删除添加的input节点
  101. // 页面滚动到之前位置
  102. window.scrollTo(0, scrollY);
  103. return res;// 返回操作结果
  104. }
  105. return {getCategoryList, addEventListener, banNavigatorContextMenu};
  106. })();
  107. CommonHeader.banNavigatorContextMenu();
  108. $(document).ready(function(){
  109. CommonHeader.addEventListener();
  110. });