每一个按钮在悬浮的时候都会有一个相同的提示框,怎么设计比较好?

我想了两个方法,不知道哪个好,或者是还有更好的方法解决。
第一个就是给每个按钮分别设置一个提出框,悬浮哪个按钮,就弹出那个按钮对应的提示框
第二个就是给所有的按钮设置一个提示框,通过js来控制它弹出的位置,悬浮哪个按钮,就将提示框悬浮在哪个按钮旁边

各位大神,请指教!

阅读 5.9k
7 个回答

可以通过 CSS 的伪类实现,然后使用伪类的 content 属性显示不同的内容

1.第一种方法通过css控制,效率会高很多,但是会多出很多重复的dom节点
2.第二种方法通过js控制,可以减少dom数量,但是效率不高

考虑到将来的扩展性,可能未来每个元素的提示框可能不一样,推荐第一种

如果是在某个框架中,建议将按钮抽象成一个基础组建,然后通过传参去配置弹出的提示框内容,位置等等之类的。

第二种比较合适,如果在样式基本一致的情况下,可以考虑用第二种方法,具体可以参考一下bootstraptooltips

用js来做 获取按钮的位置 然后创建tooltip定位到旁边

首先,你应该明确你的目的,这个button是用来做什么。
比如现在的元素,只有按钮,操作是悬浮,那么你就应该解耦,因为你认为是这种按钮悬浮状态下,应该出现一个弹框。你不应该选择第二种,使用公共的提示框。

现在出现了所有按钮,也就是,所有按钮不知道你的意思是什么,但是大概是指全局的所有按钮,或者是按钮组(ButtonGroup).

如果是全局的所有按钮,那么更加建议第一种,因为你根本不知道按钮的位置,如果统一提示框,那么就变成了Modal(Dialog) 或者说是Notification.也就失去了提示框本身的意义。

如果是按钮组,那么你只应该对按钮组当做特殊情况,因为按钮组本身应该是在同一个位置,你希望多个组成的按钮组,可以在按钮组的统一位置共同提示,那么你可以选择第二种。其他情况不建议使用第二种

推荐问题