Tag: 用户体验

jQuery – 在空格键的链接上触发点击事件?

在大多数浏览器中, 将[空格键]和[输入]视为单击,但链接仅将[输入]视为单击。 我的应用程序使用了许多格式化模拟按钮的链接,因此习惯于按Tab键切换按钮并按[空格键]的用户将感到沮丧。 这一点jQuery解决了这个问题: $(“a.Button”).die(“keypress”).live(“keypress”, function(e) { if (e.which == 32) { $(this).trigger(“click”); e.preventDefault(); } }); 我的问题:有没有理由不这样做? 我有点不愿意在这个基本的东西上覆盖浏览器的默认行为,但是因为我已经滥用链接标记使它看起来像一个按钮,至少这样我不会违反用户的期望任何进一步。

你如何使用jQuery的.draggable来拖动表格单元格?

在这个小提琴我想做一个jQuery或Javascript交互,这将允许我拖动第一个表格单元格(名称)并将其拉出来。 .draggable似乎只适用于div。 是否有解决方案或者我应该放弃尝试使用表格创建UI? http://jsfiddle.net/4XyzJ/33/

在本机不支持它的浏览器中模拟“占位符”属性的最准确方法是什么?

最近我一直在研究jquery / javascript解决方案来模仿placeholder属性,但是它们似乎都没有。 常见问题是: 首先不使用本机浏览器支持 表单实际上可以发布占位符文本的值 如果值相同,则无法识别占位符文本和用户输入(嘿,我的电子邮件是IS user@example.com !!为什么不提交?嘿我想搜索字符串“搜索”但它不会让我来!) 难以设计或区分常规文本和占位符文本 突兀的实现 (几乎总是。我不想为每个输入添加2个div和一个样式表来执行此操作) 只是不起作用。 jQuery网站上至少有2个。 我已经玩了一些试图让它正常工作(从我已经看到的一些代码中获得一些提示),但它仍然需要工作。 特别是,表单可以发布占位符的值。 欢迎评论和修改jsfiddle 。 (注意:Demo必须在没有占位符支持的情况下在浏览器中查看)我看到的大多数代码都占用了placeholder的值,并将其填充到输入本身,这导致了这个问题,我觉得必须有更好的方法。 有一个很好的清洁解决方案, 实际上有效吗? 编辑:我想强调一下:它应该像你在尽可能本地支持它的浏览器中看到的那样,并且尽可能不突兀,正如我当前的代码中所certificate的那样,除了包括脚本和正常情况下使用placeholder的浏览器支持它。 更新:@DA目前的解决方案是完美的一些错误修复(见评论),很想看到这个100%汇集在一起​​,并把所有坏的和错误的代码放在网上羞耻。 更新:使用DA代码的几个mod工作,但它仍然不完美,主要是关于动态添加的输入字段和现有的submit()绑定。 感谢所有的帮助,我现在已经决定它不值得。 我知道有些人肯定会使用这个。 这是一个很好的技巧,但对我来说,即使表单提交做出不打算做的事情,或者错误地阅读用户输入,也不值得1%的可能性。 这个次要function不值得头疼,IE和好友只能处理它,或者如果真的需要它可以根据具体情况实现,就像客户要求它一样。 @DA再次感谢,这是我见过的最好的实现。 结论:我认为克服所有这些问题的唯一方法是这样的: 将占位符值复制到新的块级元素 将新元素添加到输入中 计算输入的高度边框和填充,并在其上移动新元素尽可能接近文本将发生的位置 使用标准模糊/更改/焦点事件可在输入具有值或聚焦时隐藏元素 这样,您无需在提交或处理可能发生的任何其他问题时执行任何操作。 对不起没有演示,我必须重新开始工作 – 但是我会保存一个最终的编辑,当它汇集在一起​​。