0

我正在使用 jquery 的jqueryTOOLS插件为我网站上的一组表单字段生成工具提示。

事件触发器由一小段 javascript 决定:

$(function() {
$("#myform :input[title],label[title]").tooltip({
position: "top center",
offset: [-10, 0],
effect: "fade",
opacity: 1.0
      });
    });

可以看到,这会触发 s 和 s 的 title 属性作为工具提示 onFocus。

您还可以看到,工具提示的配置是作为此 javascript 的一部分进行的,位置已设置,以及偏移量等。

我的问题:

相对于合适的表单中的字段,工具提示无法占据一个位置。有些元素我需要它出现在左边,一些在右边,还有一些在上面。我正在寻找一种基于元素类的方法来指定元素的替代位置。

我试过了:

设置我需要提示出现在左侧的元素的类,如下所示:

<input  
        title="This text becomes the tooltip" 
        class="errorleft" 
        type="radio" 
        name="somename" 
        value="value" 
        id="elementID"  
                /> 

然后调整我的 javascript 以包含一个额外的触发器:

$(function() {
$("#myform :input[title],label[title]").tooltip({
position: "top center",
offset: [-10, 0],
effect: "fade",
opacity: 1.0
      });
    });

    $(function() {
$("#myform.errorleft :input[title],label[title]").tooltip({
position: "center left",
offset: [0, 0],
effect: "fade",
opacity: 1.0
      });
    });

这不起作用(我知道为什么),我知道有办法做到这一点,但我看不到办法,到目前为止,我在 jqt 网站上找到的文档都没有讨论过这个问题。

任何想法都非常感谢

jsFiddle
这是我使用演示表单的情况的 jsfiddle,以及我尝试过的代码 - 在此示例中,电子邮件字段具有类“errorleft”,而所有其他字段都是无类的。所有工具提示都显示在右侧 http://jsfiddle.net/DjHr7/1/

4

1 回答 1

1

您的选择器中缺少一个空格。如目前所写,

$("#myform.errorleft :input[title],label[title]")

意思是,找到具有 id #myform和类.errorleft的元素。它应该使用以下语法:

$("#myform .errorleft")

这意味着,在 id 为#myform的元素中找到类.errorleft的元素

:input[title],label[title](如果你给每个输入字段一个类,你不必担心添加

于 2012-11-20T01:50:20.450 回答