`
jimolangyaleng
  • 浏览: 5740 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

angularJs之如何获取input的焦点(自定义指令)

阅读更多

代码可直接运行:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>

    <div ng-app="myApp" ng-controller="control">
        <input type="text" set-Focus ng-blur="setBlur()">
        <button ng-click="getFocus()">点击获取焦点</button>
    </div>  

<script type="text/javascript">     
    //模型
    var app = angular.module('myApp',[]);

    //控制器
    app.controller("control",function($scope){
        $scope.isCome = false;     
        $scope.isFocus = false;      

        $scope.getFocus = function(){
            $scope.isFocus = true; 
            $scope.isCome = true; 
        };

        $scope.setBlur = function(){
            $scope.isFocus = false;
alert('失去焦点')
        }
    });

    //自定义指令
     app.directive('setFocus',[ function(){
         return {
             scope:false,
             link:function(scope, element){                     
                 scope.$watch("isFocus",function(newValue,oldValue, scope) {
                    
                     if(newValue && scope.isCome){
                         element[0].focus(); //获取焦点
                         alert("获取到焦点了")
                     }
                }, true);;
             }
         };
    }]);

</script>
</body> 
</html>

 

分享到:
评论

相关推荐

    深究AngularJS—如何获取input的焦点(自定义指令)

    在AngularJS中,获取输入元素(input)的焦点是一项常见的需求,尤其在用户交互或表单自动填充时。本文将深入探讨如何通过自定义指令来实现这一功能,以便更好地理解和掌握AngularJS的核心机制。 首先,我们需要了解...

    深究AngularJS如何获取input的焦点(自定义指令)

    关于如何获取input框、textarea等的焦点,网上有许多文章都只是会跟你说ng-focus这个内置指令。像这种解答,只能说明作者并为真正理解人家的需求。ng-focus是一个事件,跟原生JS(JavaScript)的onfocus是一样的,当...

    angularjs利用directive实现移动端自定义软键盘的示例

    在本文中,我们将深入探讨如何使用AngularJS的`directive`特性来实现在移动设备上自定义软键盘。AngularJS是一个强大的前端JavaScript框架,它通过`directives`提供了一种方式来扩展HTML,使得我们可以创建自定义的...

    AngularJS实现的获取焦点及失去焦点时的表单验证功能示例

    本示例将详细讲解如何使用AngularJS的`ng-blur`和`ng-focus`指令来实现在表单元素获取焦点和失去焦点时进行验证。 首先,让我们理解这两个指令的作用: 1. `ng-blur`: 这个指令会在用户离开(失去焦点)某个元素时...

    AngularJS基础 ng-focus 指令简单示例

    总结来说,ng-focus指令是AngularJS中一个非常实用的工具,它为开发者提供了在元素获得焦点时执行自定义逻辑的能力。通过合理使用ng-focus指令,可以为Web应用增加更丰富的交互功能。在实际开发中,开发者应该掌握ng...

    AngularJS基础 ng-model-options 指令简单示例

    ng-model-options指令提供了很多参数,允许开发者自定义数据绑定的行为。比如,在数据绑定时,可以选择立即更新模型或者在特定事件发生之后再更新模型。这样一来,开发者可以根据实际应用场景的需求,控制何时将数据...

    AngularJS ng-blur 指令详解及简单实例

    这个指令是AngularJS对原生`onblur`事件的一个扩展,提供了一种声明式的方式来处理元素失去焦点的事件。 `ng-blur`指令的基本语法是将一个表达式放在双引号内,附加到HTML元素上,如下所示: ```html ...

    Angularjs中使用layDate日期控件示例

    而在AngularJS中,我们通常会通过自定义指令的方式来实现与Angular数据模型的双向绑定,确保HTML元素的值与AngularJS模板中的变量同步。 在给定的代码示例中,我们创建了一个名为`defLaydate`的指令,该指令的主要...

    angularjs实现table表格td单元格单击变输入框/可编辑状态示例

    在edit函数中,首先通过事件对象e获取到被点击的td元素,然后将td中的文本内容提取出来,并创建一个input元素,将文本内容填充到input的value属性中。然后将新创建的input元素插入到原来的td元素中。为了让用户可以...

    Angular.js组件之input mask对input输入进行格式化详解

    指令是Angular.js的一个核心概念,开发者可以创建自己的指令来封装自定义功能。 在使用input mask组件时,通常需要引入jQuery库及其inputmask插件。inputmask插件提供了一系列预设的格式化方法,让开发者能够非常...

    ionic开发中点击input时键盘自动弹出

    在给定的描述和代码中,提供了一个自定义指令(focusInput)来处理这个问题。 首先,让我们深入理解这段代码的工作原理: 1. 创建一个名为`focusInput`的AngularJS指令,该指令的作用是在iOS平台上监听输入框的焦点...

    AngularJS实现注册表单验证功能

    除了AngularJS提供的内置验证指令外,还可以创建自定义验证器。例如,可以通过定义一个函数并在HTML中使用`ng-pattern`来实现对特定格式的验证。 #### 六、错误消息的显示 AngularJS允许通过不同的条件来显示错误...

    Angualrjs 表单验证的两种方式(失去焦点验证和点击提交验证)

    另外,为了提高可维护性和复用性,建议将验证逻辑封装到自定义指令中。 总结来说,AngularJS提供了灵活的表单验证机制,开发者可以根据项目需求选择点击提交验证或失去焦点验证,以达到最佳的用户体验和数据准确性...

    Angular简单验证功能示例

    AngularJS提供了多种内置的验证器,如required、number、email等,以及自定义验证器的机制。通过使用ng-model指令,开发者可以将HTML表单输入(如input元素)与作用域(scope)中的变量绑定。在数据绑定的基础上,...

    前端项目-ngmodeloptions.zip

    在AngularJS 1.2版本中,引入了一个新的特性——`ngModelOptions`,这个特性允许开发者对`ngModel`指令的行为进行更精细的控制。`ngModelOptions`是一个强大的工具,它可以改变数据绑定、验证以及模型更新的默认行为...

    JavaScript 试卷试题附答案

    AngularJS1 中用于指定控制器的指令是什么? - **选项分析**: - A: `ng-route`:用于配置路由。 - B: `ng-template`:用于模板缓存。 - C: `ng-model`:用于数据双向绑定。 - D: `ng-controller`:用于定义...

    帽子单选按钮:使用HTML,AlpineJS和TailwindCSS构建的单选按钮

    例如,我们可以通过`x-data`定义一个数据对象来存储当前选中的选项,然后使用`x-bind:checked`指令将输入元素的`checked`属性与该数据对象关联。这样,当用户点击某个单选按钮时,AlpineJS会自动更新相关数据: ```...

Global site tag (gtag.js) - Google Analytics