【有意思的BUG】分享按钮 分享功能
【分享按钮】是一个常见的功能,你可以把看到的有意思的东西分享到自己的BLOG、朋友圈之类的地方。
但是,分享出去的文本(也可以包含图片)在每个目标网站上面的格式并不是统一的,所以就存在了美感的三六九等。
举个例子,直观些:
下图是在某一个音乐网站,用户分享一首歌到自己微博里的操作

下图是已经把歌曲分享到用户自己微博里的样子

分享功能需要验证什么?按照上面圈起来的这几个区域说说,
【1】【进入详情页】-这个功能在微博常见,一般在分享操作的场景内不会出现BUG
【2】【文本】-每个目标网站上面的格式并不是统一的
(你看,在这个目标网站内,展示的效果并不是十分负责任。歌曲名称被截断了,这显然失去了分享歌曲的重点。用户的分享理由也没有突显出来,仅仅是包含在这2行文本内,不容易被注意到。用户体验太差了!!)
【3】【图片】-有的目标网站支持图片点击查看大图,有的目标网站点开后仍然展示缩略图(分析:第3方平台的原因)
所以【2】【3】真的非常影响用户体验,如果能优化这些细节就太好了。
【4】【视频】-展示给用户的样式是否一致
【5】来自【虾米音乐】-这个结果显然是正确的,你可能遇到“来自【null】”、“来自【分享按钮】”等等比较奇葩的情况
验证分享功能也会出现比较低级的失误:
【6】developer忘记给分享功能加URL,导致分享按钮是个摆设
【7】分享按钮的ICON对应了错误的目标网站地址
另外需要关注的也有分享功能的工作流,不过这个内容并不算作本篇文档讨论范围。总的来说,分享组件需要详细地验证,以便当全站其它模块需要引用到这个功能的时候,就不需要再投入精力去专门验证它了。
补充,在验证分享功能的时候,也可能存在以下BUG
【8】分享到第三方平台后,登录到第三方平台发现没有分享记录。(分析:某些第3方平台必须是手机验证用户才能发表原创内容。但是既然没有分享成功,又没有给予用户有效的提示,这算是BUG)
【9】分享过程是否自动给必填字段都传了值(标题、描述)(分析:一切额外的手动操作可以视为体验范围内的BUG)
【有意思的BUG】分享按钮 分享功能的更多相关文章
- bShare分享插件|自定义分享按钮|异步加载分享解决办法
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 微信禁用右上角的分享按钮,WeixinJSBridge API以及隐藏分享的子按钮等菜单项
<!--禁用微信分享按钮--> <script> function onBridgeReady() { WeixinJSBridge.call('hideOptionMenu' ...
- 9款经典华丽的CSS3分享按钮
如果你经常活跃在一些社交网站上,那么你肯定会看到过很多形式各异的分享按钮,目前由于HTML5和CSS3的普及,很多分享按钮也都应用了CSS3样式,甚至会有很多带有动画的CSS3分享按钮.本文就向大家介 ...
- 人人API 分享到人人功能 修改版
最近在搞一个日程管理网站, 需要实现分享到人人功能, 所以找了一下人人API, 然后根据自己需要修改了一下. 首先得有一个人人给的js文件, 如下: var Renren = Renren || {} ...
- (转)微信禁用右上角的分享按钮,WeixinJSBridge API以及隐藏分享的子按钮等菜单项
<!--禁用微信分享按钮--> <script> function onBridgeReady() { WeixinJSBridge.call('hideOptionMenu' ...
- 为Hexo Next主题添加分享及打赏功能
博客地址:往事亦如风的博客 要想先看打赏和分享功能效果,请移步我的博客 打赏功能 因为next主题自带打赏功能,所以我们只需要在next的主题配置文件中找到如下代码,image文件夹是我在blog/s ...
- 微信小程序一个页面多个按钮分享怎么处理
首先呢,第一步先看api文档: 组件:button https://developers.weixin.qq.com/miniprogram/dev/component/button.html 框架- ...
- 纯CSS3实现的顶部社会化分享按钮
今天要分享一款纯CSS3实现的社会化分享按钮,它放置在网页的顶部,你可以选择将它固定在网页顶部,这样对用户分享内容就十分方便.这些社会化分享按钮的图标文件来自google和bootstrap的字体文件 ...
- 纯css3实现的圆形旋转分享按钮
之前已经为大家介绍了好几款css3按钮,今天要为大家介绍的是一款纯css3实现的圆形旋转分享按钮.旋转的角度可以自己调整.在demo中演示了三个角度旋转.360度,60度,-360度.如图: 在线预览 ...
随机推荐
- python迭代器生成器(二)
其他内置类型迭代器 除了文件以及列表这样的实际的序列外,其他类型也有适合的迭代器. 遍历字典的经典方法是明确的获取其键的列表. 在最近的python版本中,字典有一个迭代器,在迭代环境中,会自动一次返 ...
- Pycharm直接连接Github
Pycharm可以说是使用Python语言开发者的必备利器.高校学生有学生邮箱就可以免费使用,着实省了我不少银两.附个license图: Git是一个开源的分布式版本控制系统,用以有效.高速的处理从很 ...
- Tomcat学习笔记(一)一个简单的Web服务器
内容为<深入剖析Tomcat>第一章重点,以及自己的总结,如有描述不清的,可查看原书. 一.HTTP协议: 1.定义:用于服务器与客户端的通讯的协议,允许web服务器和浏览器通过互联网进行 ...
- Java读取property配置文件
读取配置文件已经成了Java程序员工作的一项必备技能. 配置文件的优点: 可维护性好 怎么个可维护性好呢? 它会让程序中变化的地方很灵活的配置,不需要修改代码. Java程序部署到服务器上去之后就变成 ...
- Android帧动画笔记
创建drawable资源文件,选择animation-list<?xml version="1.0" encoding="utf-8"?><a ...
- 快手 Android 工程师面经
看着我把简历投完之后弹出的"完成"字样,我就十分的激动了,我是一名应届毕业生,老老实实的那种,学过的知识我都一步一个脚印的复习的完了,Lintcode上该刷的题,也妥妥的完成了,但 ...
- Python基础之内置函数和递归
一.内置函数 下面简单介绍几个: 1.abs() 求绝对值 2.all() 如果 iterable 的所有元素都为真(或者如果可迭代为空),则返回 True 3.any() 如果 iterable 的 ...
- android - gradle编译错误 exit value 1,2,3总结
在使用jenkins,使用gradle编译的时候总会出现一些问题,下面是几个常见问题的解决方法. 被编译的代码或资源有问题( finished with non-zero exit value 1): ...
- hashcode-equals方法
package com.charles.collection; import java.util.HashSet; import java.util.Set; public class Point { ...
- (转)java提高篇(五)-----抽象类与接口
接口和内部类为我们提供了一种将接口与实现分离的更加结构化的方法. 抽象类与接口是java语言中对抽象概念进行定义的两种机制,正是由于他们的存在才赋予java强大的面向对象的能力.他们两者之间对抽象概念 ...