Javascript 要形成标签的事件侦听器

Javascript 要形成标签的事件侦听器,javascript,label,event-listener,Javascript,Label,Event Listener,所以我试图让这个函数使用事件监听器来创建表单的标签。它应该以元素的id值作为参数,然后给每个标签一个id值id+“label”。当我打电话给它时,它现在什么也没做。U和这个。$U是缩短代码的其他代码 addTooltipHandlers: function(id) { 'use strict'; // Get the form element reference: var newId = this.$(label.id); newId.onmouseo

所以我试图让这个函数使用事件监听器来创建表单的标签。它应该以元素的id值作为参数,然后给每个标签一个id值id+“label”。当我打电话给它时,它现在什么也没做。U和这个。$U是缩短代码的其他代码

    addTooltipHandlers: function(id) {
    'use strict';

    // Get the form element reference:
    var newId = this.$(label.id);

    newId.onmouseover = showTooltip;
    newId.onmouseout = hideTooltip;
    newId.onfocus = showTooltip;
    newId.onblur = hideTooltip;

}, // End of addTooltipHandler() function.
我用另一个js文件调用它

U.addTooltipHandler('someLabel');
我正在尝试使用它的Html代码

<div class="two"><label for="phone">Phone Number<span class="tooltip">In the format XXX XXX XXXX or XXX-XXX-XXXX or XXXXXXXXXX.</span></label><input type="text" name="phone" id="phone" required></div>
电话号码,格式为XXX-XXX-XXXX或XXX-XXX-XXXX或xxxxxxxxx。
试试这个:

addTooltipHandlers: function(id) {
    'use strict';

    // Define the new ID value:
    var newId = this.$(id + 'label');

    newId.onmouseover = showTooltip;
    newId.onmouseout = hideTooltip;
    newId.onfocus = showTooltip;
    newId.onblur = hideTooltip;

},
不需要从
id
获取元素,您不需要对该元素执行任何操作。您只需要将给定ID与
标签
连接起来,并使用该标签查找要附加处理程序的新元素

第二个
onmouseover
应该是
onmouseout

为此,您需要为标签提供ID:

<label for="phone" id="phonelabel">

第二个
onmouseover
应该是
onmouseout
。这是什么。$(id)?那不应该是
document.getElementById(id)
?哦,天哪。。。真不敢相信我做了那件事。此.$(id)是document.getElementByID(id)。它是一个匿名函数,用于缩短代码。如何将标签组件添加到新id?我的答案没有说明如何添加吗?我不知道,这是您的设计,我看不到整体结构。我认为我处理标签部分的方法是错误的,因为id+“label”找不到我认为的任何东西。我正在尝试var newId=this.$(label.id);我试图调用的html是电话号码,格式为XXX-XXX-XXXX或XXX-XXX-XXXX或xxxxxxxxx。请给标签一个id,例如
Hi Barmer我似乎在隐藏和显示工具提示时遇到错误,我得到了错误目标。previousSibling.lastChild.style.visibility='visible';我在那里添加了代码,我对为您调试整个应用程序并不感兴趣。学习使用调试器。
U.addToolTipHandlers('phone');