一、问题的由来

问题是这样子给出来,今天产品那边跟我说,在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的参数判断是否让该用户选择身份的更多相关文章

  1. 三十七、小程序页面跳转传参参数值为url时参数丢失

    当参数的值为url的时候,在options中的值没有参数“?”之后字符串被截取.例如:let url="http://baidu.com/?a=1&b=2"wx.navig ...

  2. 小程序页面跳转传参参数值为url时参数时 会出现丢失

    当参数的值为url的时候,  ?号   _  下划线   等等 都会被 截取掉,看不到,  这样在 另一个页面 options中  截取的url就不完全 let url="http://ba ...

  3. 小程序跳转传参参数值为url时参数丢失

    通过先encodeURIComponent,取到值以后再decodeURIComponent,拼接参数正常传递 A页面 switch: function (e) { var aa = 'UNNZVUf ...

  4. 自定义HttpModule,用于未登录用户,不弹出Windows认证窗口,而是跳转回SSO站点

    2012年的一篇随笔记录,可以学习到如何自定义HttpModule,而具体里面针对需求开发的代码,可能未必能让大伙了解到什么,可快速扫描而过. using System; using System.W ...

  5. Linux 如何设置只允许域名访问站点而禁止IP访问站点

    最近在论坛里看到有人问到 Linux 如何设置只允许域名访问站点而禁止IP访问站点的问题,之前自己也用过这个功能,可以防止别人用 IP 地址来访问到自己的网站,下面我就我自己的环境给出解决方法,我用的 ...

  6. C# 创建iis站点以及IIS站点属性,iis不能启动站点

    DontLog = False是否将客户端的请求写入日志文件 2011年04月09日 #region CreateWebsite 新增网站 public string CreateWebSite(st ...

  7. 50套html站点模板,涵盖非常多行业,各种类型html站点,各种行业html站点模板下载

    50套html站点模板,涵盖非常多行业,各种类型html站点.各种行业html站点模板下载 所以模板都在共享文件中面QQ群 139639813 ,快下载吧.

  8. 用jQuery.ajaxWebService请求WebMethod,Ajax处理实现局部刷新;及Jquery传参数,并跳转页面 用post传过长参数

    首先在aspx.cs文件里建一个公开的静态方法,然后加上WebMethod属性. 如: [WebMethod]  public static string GetUserName()   {  //. ...

  9. 移动端访问PC站点时自动跳转至移动站点

    方法一: 百度Site APP的uaredirect.js 实现手机访问,自动跳转 <script src="http://siteapp.baidu.com/static/webap ...

随机推荐

  1. BZOJ 3992 [SDOI 2015] 序列统计 解题报告

    这个题最暴力的搞法就是这样的: 设 $Dp[i][j]$ 为前 $i$ 个数乘积为 $j$ 的方案数. 转移的话就不多说了哈... 当前复杂度 $O(nm^2)$ 注意到,$M$ 是个质数,就说明 $ ...

  2. Tomcat 6 支持 NIO -- Tomcat的四种基于HTTP协议的Connector性能比较(转载)

    Tomcat从5.5版本开始,支持以下四种Connector的配置分别为: <Connector port="8081" protocol="org.apache. ...

  3. [JAVA]HDU 4919 Exclusive or

    题意很简单, 就是给个n, 算下面这个式子的值. $\sum\limits_{i=1}^{n-1} i \otimes (n-i)$ 重点是n的范围:2≤n<10500 比赛的时候 OEIS一下 ...

  4. easyui源码翻译1.32--Droppable(放置)

    前言 使用$.fn.droppable.defaults重写默认值对象.下载该插件翻译源码 源码 /** * jQuery EasyUI 1.3.2 * *翻译:lbq --放置 拉伸 */ (fun ...

  5. ArcGIS Engine Style文件操作

    对于一个GISer来说,地图,符号这些都应该有着比别人更深刻的理解和认识,作为平台软件都会提供一套自己的符号库,符号库里面根据类别和种类进行区分,因为点,线,面的自然存在和固有属性是不肯能让你用面状符 ...

  6. mysql select count(filed) 问题(where条件没有数据匹配的话也有数据返回)。

    问题: SELECT count(*),user_id FROM tb_rp_logintrace WHERE id=-1 返回结果: count(*), user_id 0             ...

  7. 微小说《tree》

    自己一直是一个矛盾纠结的人,计算机专业,却喜欢画画,偶尔会写些短文,寓言,或者酸酸的情诗.. 废话不多说,各位看官有兴趣便随意看看,若有些于共鸣,便共勉之. 正文 两株幼苗从土壤中破土而出,一颗天生强 ...

  8. netsh命令

    C:\Windows\System32>netsh interface ipv6 show address level=verbose 地址 ::1 参数-------------------- ...

  9. oracle的一种字符串处理机制。

    orcale会把空字符串当成Null进行存储,sqlserver直接存储空字符串

  10. BZOJ_1821_[JSOI2010]_部落划分_(贪心,并查集)

    描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1821 给出n个点的坐标,将n个点划分成k个部分,使得每个部分之间最小的距离最大. 分析 每两个 ...