angularjs – 在输入焦点上选择文本
发布时间:2020-12-17 09:12:52 所属栏目:安全 来源:网络整理
导读:我有一个文本输入。当输入接收焦点时,我想选择输入中的文本。 使用jQuery我会这样做: input type="text" value="test" / $("input[type=text]").click(function() { $(this).select(); // would select "test" in this example}); 我搜索过周围尝试找到Ang
我有一个文本输入。当输入接收焦点时,我想选择输入中的文本。
使用jQuery我会这样做: <input type="text" value="test" /> $("input[type=text]").click(function() { $(this).select(); // would select "test" in this example }); 我搜索过周围尝试找到Angular的方式,但我发现的大多数示例是处理一个指令,正在观察一个模态属性的变化。我假设我需要一个指令,正在监视一个接收焦点的输入。我该怎么做?
在Angular中这样做的方法是创建一个自定义指令,为您执行自动选择。
module.directive('selectOnClick',['$window',function ($window) { return { restrict: 'A',link: function (scope,element,attrs) { element.on('click',function () { if (!$window.getSelection().toString()) { // Required for mobile Safari this.setSelectionRange(0,this.value.length) } }); } }; }]); 应用这样的指令: <input type="text" value="test" select-on-click /> View demo Update1:??删除了jQuery依赖。 Update2:限制为属性。 Update3:适用于移动Safari。允许选择部分文本(需要IE> 8)。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |