javascript - 为什么此搜索框不选择点击时的所有文本?

标签 javascript html yui

您可以在以下位置查看相关搜索框:http://www.trailbehind.com 。如果用户尝试搜索两次,他们必须按退格键来清除文本,但我想在双击时选择所有文本,默认情况下输入应该这样做。为什么不介意?

当用户第一次点击时,我清除输入,如下所示:

input.onclick = clearInitialValue;

function clearInitialValue() { 
  this.value = ""; 
  this.onclick = 'return True';
  this.style.color = "black";
}

为了帮助我解决这个谜题,您可能需要知道的另一件事是我使用输入来实例化 YUI 自动完成:http://developer.yahoo.com/yui/autocomplete/ ,但我在文档中找不到任何内容来解释为什么双击输入来选择文本不起作用。

最佳答案

请记住,每个 JavaScript 事件只能有一种方法,因此,在您的示例中,您正在分配 onclick 事件,请确保不要再次执行此操作。

要获得更多信息,您需要使用事件监听器。

var oDiv = document.getElementById('thediv');

oDiv.addEventListener('click', function (e) {
    // your method here
}, true);

或者简单

oDiv.addEventListener('click', clearInitialValue, true);

您提到您正在使用 YUI,因此代码将类似于:

 YAHOO.util.Event.on(oDiv, "click", clearInitialValue); 

这并不是直接回答您的问题,但在处理 JavaScript 事件时请记住。

<小时/>

为了回答你的问题,你的代码运行得很好...查看在 JSBIN 运行的代码

您可以在网址中添加/edit 以便对其进行编辑。

关于javascript - 为什么此搜索框不选择点击时的所有文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/930485/

相关文章:

javascript - 输入另一个元素时如何停止 mouseleave 事件?

javascript - 添加我的 AngularJS 模块时,menuToggle 不适用于移动设备,但适用于桌面

javascript - 将边框半径包含在 javascript 中时不起作用

javascript - 更改 Blob 文件名

javascript - YUI 压缩器错误 - jQuery Autotype

javascript - 使用 YUI 简单地将鼠标悬停在图像交换上

javascript - 强制输入值( Angular )

javascript - 如何在 Redux 中实现缓存?

html - 为什么我的 div 消失了?

jquery - 基于 jQuery 的 YUI 风格菜单,用于网站导航