从a站点跳转到b站点,通过url的参数判断是否让该用户选择身份

一、问题的由来
问题是这样子给出来,今天产品那边跟我说,在a网站跳转到b网站时,让用户有一个选择身份的弹窗。因为公司有两个不同站点,你无论在a或者b网站注册后,都可以随便登录这两个站点,进入之后都会有个人中心。两个站点的目的不大一样,一个是是用来吸粉(a站点),搞活动,一个是公司用来赚钱(b站点)。那么问题来了哦,从a站点的个人中心通过点击链接进入到b站点的个人中心,进入个人中心后就要有一个弹窗,让用户选择身份。
看图,这是在a站点的个人中心,a站点部分用户身份,所以此时俺还只是一个最普通的小用户,通过优雅地点击进入”硬蛋供应链“链接,就进入b站点的个人中心。

此时来了来了,因为你还没有选择你是”警察“或者是”杀手“的身份(其实是创新者或供应商),所以会弹出选择弹窗。

感觉终于把标题说清楚了。对的,我想说的就是从a站点跳转到b站点时,通过url地址所带的一个参数让我轻松又愉快的解决了一个小问题。
二、最开始的版本我的做法是通过点击事件来判断的。
最开始的时候,产品姐姐没有说跳转进入b站点后才弹窗选择身份的弹窗。那么我就使用在b站点的个人中心那里一直用的通过click点击事件来判断是否弹窗。

b站点的个人重点大概这样咯,最为社会最底层的我(普通用户),我可以点击查看的只是”账户信息“,点击其他的栏目都会让我选择身份。好吧,代码可以重用,太奈斯,我就把从a跳转到b也使用这么一个click事件判断,判断这里点击的链接地址是不是等于http://www.baidu.com/my_account 轻松解决??
事情不是这样的,too young too simple~
三、后来产品说体验不好,继续优化。我改成了用url地址来判断。
因为在a站点链接到b站点的个人中心的url地址和个人中心侧板菜单的”账户信息“的url地址一样的。坑爹咯,那么就意味着我每次在b站点的个人中心点击”账户信息“也会弹窗选择身份,但是产品设计师那边的交互这个位置是不要弹窗选择身份的。
那么,只能用最初的那个想法,让a站点过链接过来b站点的个人中心的url地址不一样点,带个参数给他呗,让我程序能判断到他是来自远方的客人,此时要弹窗问候一下。之前没这样做的原因就是我不想动a站点的php代码,因为a站点我一般不做维护。就想能不能在b站点这边做处理。但是不好弄,最后还是修改再a站点那边的链接地址,带个参数http://www.baidu.com/my_account?isA=1
前端js判断代码就像文章给出的第一张图那样。
好愉快的,
if(baseEvn.getUrlString('isA') == 1 && userRole ==4){
……
}
userRole就是用户身份,4就是我,最普通的,还没选择身份的那类人。getUrlString(val)就是一个获取url地址参数的方法咯。
四、写在最后的
其实我能想不要去改php代码就尽量不要去改,这种想法是好的吧,但是如果对于解决问题,更加轻松加愉快的话,那就果断改吧。另外,感觉那个获取url参数的方法挺好用的。又是周三,很快就周三了呀,很快很快就是中秋节,呜呜,我还没有买到票回家,真的要坐大巴的节奏,help~
从a站点跳转到b站点,通过url的参数判断是否让该用户选择身份的更多相关文章
- 三十七、小程序页面跳转传参参数值为url时参数丢失
当参数的值为url的时候,在options中的值没有参数“?”之后字符串被截取.例如:let url="http://baidu.com/?a=1&b=2"wx.navig ...
- 小程序页面跳转传参参数值为url时参数时 会出现丢失
当参数的值为url的时候, ?号 _ 下划线 等等 都会被 截取掉,看不到, 这样在 另一个页面 options中 截取的url就不完全 let url="http://ba ...
- 小程序跳转传参参数值为url时参数丢失
通过先encodeURIComponent,取到值以后再decodeURIComponent,拼接参数正常传递 A页面 switch: function (e) { var aa = 'UNNZVUf ...
- 自定义HttpModule,用于未登录用户,不弹出Windows认证窗口,而是跳转回SSO站点
2012年的一篇随笔记录,可以学习到如何自定义HttpModule,而具体里面针对需求开发的代码,可能未必能让大伙了解到什么,可快速扫描而过. using System; using System.W ...
- Linux 如何设置只允许域名访问站点而禁止IP访问站点
最近在论坛里看到有人问到 Linux 如何设置只允许域名访问站点而禁止IP访问站点的问题,之前自己也用过这个功能,可以防止别人用 IP 地址来访问到自己的网站,下面我就我自己的环境给出解决方法,我用的 ...
- C# 创建iis站点以及IIS站点属性,iis不能启动站点
DontLog = False是否将客户端的请求写入日志文件 2011年04月09日 #region CreateWebsite 新增网站 public string CreateWebSite(st ...
- 50套html站点模板,涵盖非常多行业,各种类型html站点,各种行业html站点模板下载
50套html站点模板,涵盖非常多行业,各种类型html站点.各种行业html站点模板下载 所以模板都在共享文件中面QQ群 139639813 ,快下载吧.
- 用jQuery.ajaxWebService请求WebMethod,Ajax处理实现局部刷新;及Jquery传参数,并跳转页面 用post传过长参数
首先在aspx.cs文件里建一个公开的静态方法,然后加上WebMethod属性. 如: [WebMethod] public static string GetUserName() { //. ...
- 移动端访问PC站点时自动跳转至移动站点
方法一: 百度Site APP的uaredirect.js 实现手机访问,自动跳转 <script src="http://siteapp.baidu.com/static/webap ...
随机推荐
- WINDOWS HYPER-V加新网卡,设置网络出错
新网卡加入,设置好IP之后,HYPER-V需要更改相应外部网络连接,然后重新生成新的虚拟连接网卡. 不然,虚拟机无法正常使用网络. 但我昨天在绑定新的网站时,出现如下错误: Adding a new ...
- php获取请求的方式(get/post)
$request_method = $_SERVER['REQUEST_METHOD'];//用什么方式访问 get post
- easyui源码翻译1.32--ComboGrid(数据表格下拉框)
前言 扩展自$.fn.combo.defaults和$.fn.datagrid.defaults.使用$.fn.combogrid.defaults重写默认值对象.下载该插件翻译源码 数据表格下拉框结 ...
- 【HDOJ】1542 Atlantis
离散化+线段树+扫描线,求覆盖面积. /* 1542 */ #include <iostream> #include <string> #include <map> ...
- Android开发UI之自定义控件的皮肤
定义一个button的皮肤,设置属性android:background="@drawable/button_skin",button_skin.xml文件为要下文中的资源文件. ...
- BZOJ_1014_[JSOI2008]_火星人prefix_(Splay+LCP_Hash+二分)
描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1014 给出一个字符串,有修改,插入,以及询问LCP(i,j)的操作. 分析 LCP在白书上面有 ...
- DedeCms 5.7友情链接模块注入漏洞
漏洞版本: DedeCms 5.7 漏洞描述: DedeCms基于PHP+MySQL的技术开发,是目前国内应用最广泛的php类CMS系统. DedeCms 5.7前台提交友情链接处,可以插入恶意JS代 ...
- Linux kernel ‘qeth_snmp_command’函数缓冲区溢出漏洞
漏洞名称: Linux kernel ‘qeth_snmp_command’函数缓冲区溢出漏洞 CNNVD编号: CNNVD-201311-423 发布时间: 2013-11-29 更新时间: 201 ...
- 修改NGINX版本名称为任意WEB SERVER
下载好Nginx的安装文件nginx-1.6.0.tar.gz,并把它解压. wget http://nginx.org/download/nginx-1.6.0.tar.gz .tar.gz 然后我 ...
- spring(7)--注解式控制器的数据验证、类型转换及格式化
7.1.简介 在编写可视化界面项目时,我们通常需要对数据进行类型转换.验证及格式化. 一.在Spring3之前,我们使用如下架构进行类型转换.验证及格式化: 流程: ①:类型转换:首先调用Proper ...