91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

詳解在AngularJS的controller外部直接獲取$scope

發布時間:2020-09-30 10:34:24 來源:腳本之家 閱讀:286 作者:LaplaceDemon 欄目:web開發

以前利用webqq的寫過一個自動發消息的腳本,由于那時webqq還直接使用類似jQuery操作DOM的技術,所以腳本很簡單就可以實現。

現如今很多web應用都開始使用AngularJS,MVVM導致的就是無法操作dom而去直接改變數據。所以面對網頁版微信,要實現一個自動發送的腳本,就無法再用以前那套DOM的思路了。

要修改AngularJS中的數據,首先就要獲取scope。其實獲取scope的方法很簡單。

由于大部分Angular項目需要使用jQuery作為補充。可以在jQuery中通過.scope()方法獲取當前選擇器內容里繼承的域。

即類似這樣的方式:

$('div[ng-controller="listController"]').scope();

例:完整的例子。

<!DOCTYPE html>
<html lang="en" ng-app="app">
<head>
  <meta charset="UTF-8">
  <title>Get angular's scope in jQuery</title>
  <script src="http://cdn.bootcss.com/jquery/2.1.4/jquery.js"></script>
  <script src="http://cdn.bootcss.com/angular.js/1.4.3/angular.js"></script>
  <script>
    angular.module('app',[])
        .controller('listController',['$scope', function ($scope) {
          $scope.list = [1,2,3,4,5];
          $scope.test = function () {
            console.log('test');
          }
        }])
  </script>
  <script>
    $(document).on('ready', function () {
      var controllerScope = $('div[ng-controller="listController"]').scope(); // Get controller's scope
      controllerScope.test(); // log 'test'
      console.log(controllerScope.list); // log [1,2,3,4,5]
      $('button').click(function (e) {
        var scope = $(e.target).scope();
        console.log(scope.item) // log item number
        scope.test(); // log 'test'
      })
    })
  </script>
</head>
<body>
<div ng-controller="listController">
  <ul>
    <li ng-repeat="item in list"><button>Select {{item}}</button></li>
  </ul>
</div>
</body>
</html>

那么打開網頁版微信的頁面(2016-06-05)選中你需要發消息的人。然后執行如下腳本:

var controllerScope = $('div[ng-controller="chatSenderController"]').scope(); 
  // 獲取chatSenderController的$scope
controllerScope.editAreaCtn = "星哥,下午好";  // 設置需要發送的消息。即設置$scope某個屬性的值。

// 觸發“發送按鈕”的點擊事件。
$(".action a").trigger("click");

非常好的“外掛方式”。 

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宽甸| 措勤县| 乌鲁木齐县| 南丰县| 荆门市| 色达县| 溆浦县| 宝清县| 肃南| 肥乡县| 延安市| 吉首市| 台北县| 三穗县| 邳州市| 南木林县| 陈巴尔虎旗| 吉木乃县| 沈阳市| 德兴市| 旌德县| 当阳市| 邓州市| 孟州市| 舞阳县| 清流县| 五常市| 香河县| 泾阳县| 宜宾市| 集安市| 安平县| 北碚区| 沛县| 巴青县| 广水市| 滕州市| 昌江| 宁津县| 改则县| 邯郸市|