当我执行以下角度自定义指令示例时,我收到错误。
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script src="Scripts/angular.min.js"></script>
<script>
var myMod = angular.module('RKdirectives', []);
myMod.directive('rkd1', function () {
return {
restrict: 'A',
link: function (scope, element) {
element.mouseup(function (event) {
event.preventDefault();
});
element.focus(function (event) {
element.select();
});
}
}
});
var myApp = angular.module('MyApp', ['RKdirectives']);
var ctrl = function ($scope) {
};
myApp.controller('ctrl', ctrl);
</script>
</head>
<body ng-app="MyApp">
<input type="text" rkd1 />
</body>
</html>
当我在浏览器中执行此示例时,我得到,TypeError:undefined不是控制台中的函数。
请让我知道我错过了什么。
答案 0 :(得分:2)
您使用的是element.mouseup
和element.focus
jQuery函数。您需要在页面中包含jQuery:
<script src="Scripts/jquery.min.js"></script>
<script>
<script src="Scripts/angular.min.js"></script>
<script>
来自docs:
如果jQuery可用,angular.element是jQuery的别名 功能。如果jQuery不可用,则angular.element委托给 Angular的内置jQuery子集,称为“jQuery lite”或“jqLite”。