中关村网站产品参数页的参数纠错的制作

今天突然想在正在做的网站中加上个像中关村一样的参数纠错的功能,效果如下图:

虽然看起来好像蛮简单,但是自己还是想了一下午加上晚上的2个小时,不过等到自己做出来的时候好像也感觉到蛮简单的,其实这种web页面的小特效只要把思路想通了就很简单了,呵呵,只是思路,不能说是算法,算法太高深,ME也不懂。
看到这个效果很容易想到,无非也就是给那个td单元格加上一个mouseover事件,当鼠标移上出的时候就出现那个“参数纠错”的HTML标签。
用firebug查看中关村的页面,可以那到那个参数纠错无非也就是一个span标签中包含一个img和一段文字,然后给他一个向右浮动,这样自然会靠在td的右边。
需要注意的是当鼠标移开td单元格了以后,那个参数纠错的标签还是显示的,只有当鼠标移到另一个td单元格时,原来的那个参数纠错的标签才会消失,这样的话td的mouseout事件就不可用了。
我的想法就是利用jquery中的remove方法,每回进到mouseover事件时,首先先把当前页面中的参数纠错的标签移除,然后再在当前的td单元格内加上参数纠错的HTML标签。

废话讲多了,看如下正确的代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>产品纠错</title>
    <style type="text/css">
        .param_td
        {
            line-height: 25px;
        }
        .param_td a
        {
            font-size: 12px;
        }
        .param_td a:link, .param_td a:visited
        {
            text-decoration: none;
            color: #0368A8;
        }
        .param_td a:hover
        {
            text-decoration: underline;
            color: #FF6600;
        }
    </style>

    <script src="js/jquery.js" type="text/javascript"></script>

    <script type="text/javascript">
        function show(obj_td) {
            /*
            鼠标移到td单元格中,首先先把当前页面中纠错的HTML标签去掉,
            再把纠错的HTML标签加到当前单元格中
            */
            $("#param_jiucuo").remove();
            var td = $(obj_td);
            var tmp = td.text().replace("参数纠错", "");
            var html_jiucuo = "<span bgcolor='#ffffff' style='float: right;' id='param_jiucuo'>" +
                                        "<img src='http://icon.zol.com.cn/detail0802/e2.gif'/>" +
                                        "<a href='javascript:alert(\"" + tmp + "\")'>参数纠错</a>" +
                                        "</span>";
            td.html(html_jiucuo + tmp);
        }
    </script>

</head>
<body>
    <table width="770" cellspacing="1" cellpadding="0" border="0" bgcolor="#c5d7ed">
        <tbody>
            <tr>
                <td width="100" bgcolor="#ffffff" valign="middle" align="left">
                    <strong>手机类型</strong>
                </td>
                <td width="450" bgcolor="#ffffff" class="param_td" onmousemove="show(this)">
                    智能手机,3G手机
                </td>
            </tr>
            <tr>
                <td width="100" bgcolor="#ffffff" valign="middle" align="left">
                    <strong>手机制式</strong>
                </td>
                <td width="450" bgcolor="#ffffff" class="param_td" onmousemove="show(this)">
                    GSM、WCDMA
                </td>
            </tr>
            <tr>
                <td width="100" bgcolor="#ffffff" valign="middle" align="left">
                    <strong>支持频段</strong>
                </td>
                <td width="450" bgcolor="#ffffff" class="param_td" onmousemove="show(this)">
                    GSM 900/1800/1900MHz
                </td>
            </tr>
        </tbody>
    </table>
</body>
</html>

 以上代码是我测试成功的代码,起初我是不想在td标签上加onmousemove参数的,想利用jquery直接在$(function(){})中给第个td标签加上mousemove方法,但是最后测试不成功,如下是错误的代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>产品纠错-有问题的页面</title>
    <style type="text/css">
        .param_td
        {
            line-height: 25px;
        }
        .param_td a
        {
            font-size: 12px;
        }
        .param_td a:link, .param_td a:visited
        {
            text-decoration: none;
            color: #0368A8;
        }
        .param_td a:hover
        {
            text-decoration: underline;
            color: #FF6600;
        }
    </style>

    <script src="js/jquery.js" type="text/javascript"></script>

    <script type="text/javascript">
        $(function() {
        /*
            由于JS的冒泡事件机制,给td加个mouseover事件后也会自动给td内的a标签加上
            该事件,所以就会有问题
        */
            $(".param_td").mouseover(function() {
                var td = $(this);
                $("#param_jiucuo").remove();
                var tmp = $.trim(td.text().replace("参数纠错", ""));
                var html_jiucuo = "<span bgcolor='#ffffff' style='float: right;' id='param_jiucuo'>" +
                                        "<img src='http://icon.zol.com.cn/detail0802/e2.gif'/>" +
                                        "<a href='javascript:alert(\"" + tmp + "\")'>参数纠错</a>" +
                                        "</span>";
                td.html(html_jiucuo + tmp);
            });
        })
    </script>

</head>
<body>
    <table width="770" cellspacing="1" cellpadding="0" border="0" bgcolor="#c5d7ed">
        <tbody>
            <tr>
                <td width="100" bgcolor="#ffffff" valign="middle" align="left">
                    <strong>手机类型</strong>
                </td>
                <td width="450" bgcolor="#ffffff" class="param_td">
                    智能手机,3G手机
                </td>
            </tr>
            <tr>
                <td width="100" bgcolor="#ffffff" valign="middle" align="left">
                    <strong>手机制式</strong>
                </td>
                <td width="450" bgcolor="#ffffff" class="param_td">
                    GSM、WCDMA
                </td>
            </tr>
            <tr>
                <td width="100" bgcolor="#ffffff" valign="middle" align="left">
                    <strong>支持频段</strong>
                </td>
                <td width="450" bgcolor="#ffffff" class="param_td">
                    GSM 900/1800/1900MHz
                </td>
            </tr>
        </tbody>
    </table>
</body>
</html>

以上代码的错误出在哪里让自己想了N久,最后基本理解,由于JS的事件触发是一个冒泡机制的,大概就是因为我在JS代码中给td标签加了mouseover事件,这样在显示出来的时候当我移到td内的a标签上时也触发了td的mouseover事件,所以会出错,而之前的那个直接把mouseover事件加上HTML标签上的就不会有这个问题吧。
源码下载:http://taotao.wsyren.com/download/jiucuo.rar

时间: 2024-09-21 05:32:08

中关村网站产品参数页的参数纠错的制作的相关文章

浅析京东商城产品列表页的用户体验和营销手段(四)

在<浅析京东商城产品列表页的用户体验和营销手段(三)>中咱们说到了排序选择这块,今天继续看下面的.   晃眼一看就是普普通通的产品列表展示,图片+标题+价格+购买链接.产品图片和标题这里就不提了,每个电子商务网站产品列表页必须的格式,这个价格和其他电子商务网站比起来貌似都一样,没啥特别的,但是咱们结合其上级页面来看,上面几乎所有页面在价格前面都有一个"京东价",而这里却没有任何标志,我的理解是这样的. 首页乃至各大分类主页,所能展示的产品有限,并且这些页面的重要程度以及访问

用户体验设计:电商网站产品页的购买按钮

文章描述:用户体验设计:电商网站产品页的购买按钮. 一般上电子商务网站买东西的用户分三种: 1.随便看看,就是不买 2.先看看,买不买再说 3.就是来买东西的 这样的需求反应到产品页的购买按钮上,我们一般会看到购买和收藏两个按钮,而购买又可以分为立即购买和加入购物车两种. 对于第一种用户来说,你按钮做的再大再合理也不关他的事,因为他压根就不想买. 对于第二种用户来说,购物车按钮或是收藏按钮对他来说是优先选择的按钮,因为他过一段时间才买. 对于第三种用户来说,立即购买是最合适的按钮,其次是购物车按

实例讲解电子商务网站产品页的优化技巧

电子商务网站而言,最看重的不是流量而是转化率,如果转化率不高,即使流量上万也没什么用.毕竟电子商务类型的网站不可能挂一些类型弹窗.游戏之类的广告吧,这样会影响到用户体验而且对于可信度也没有任何的正面作用.而对电子商务网站的站长来说,针对决定转化率高低的产品页应该如何去优化呢?怎么样优化才能使得产品页不会因为用户体验不好或者其他的因素不全而使得成交单丢失呢?今天笔者以例子来讲解一下电子商务网站产品页的优化技巧. 一.产品图片加上ALT属性 对于大部分的电子商务网站而言,其中产品页主要以图文形式展现

java-有查询条件的情况下,分页翻页带参数问题

问题描述 有查询条件的情况下,分页翻页带参数问题 查询条件有八个,但是用的时候一般只有一两个,其他的查询条件值就为空,在控制器里设置翻页url的时候把查询条件都加在后面了.结果在页面翻页的时候坑爹的问题出现了,为空的查询条件到页面再到控制器用request.getParameter("id")接收后全部变成了字符串"null",后续判断不仅要判断是否为空,还要判断是否为字符串"null".感觉这种做法太蠢了,如果不想在设置翻页url的时候挨个用i

错误:“产品订单的调度参数没有被定义”

信息错误信息:产品订单的调度参数没有被定义消息号 CT604诊断在定制工厂1000,订单类型ZP91和生产调度员*的过程中,没有为生产订单定义计划级别.只有输入了详细计划.粗略计划或生产率计划的选择标识,才能实施计划.根据标准任务清单的用途.类型和状态,选择标识确定工艺路线选择的优先级.另外,必须维护计划类型.步骤通过输入详细计划.粗略计划或生产率计划的选择标识,维护计划参数和选择计划类型.执行功能问题分析: 从"步骤"中可以看到,需要维护计划参数和计划类型,且从"诊断&qu

对编辑企业网站产品的探讨

摘要: 目前企业网站中的产品大多都是线下成交,网上成交的比较少,产品做为企业网站中不可缺少的内容组成部分,编辑好每一个产品页面也显得尤为重要.但大多的企业网站中所展示出的 目前企业网站中的产品大多都是线下成交,网上成交的比较少,产品做为企业网站中不可缺少的内容组成部分,编辑好每一个产品页面也显得尤为重要.但大多的企业网站中所展示出的产品来看,除了一张陈旧的图片以外就是加个参数或更为简单的就是一个联系方式,这样是否可行?当今的企业逐渐从线下竞争演绎到线上竞争.产品做为企业最具竞争力的一部分,网上所

浅析京东商城产品列表页的用户体验和营销手段(二)

昨天在<浅析京东商城产品列表页的用户体验和营销手段(一) >中咱说到了商品筛选这块,今天继续! 普通筛选如果无法达到用户所需要的精确度的话,其还准备了高级筛选给用户选择,当然此功能大部分用户是用不着的,因为这里面的很多参数大部分人都看不懂的,并且参数很多,看得人眼花缭乱的,不过虽然大部分人用不着这个,但是做生意嘛,目标是做所有人的生意,并不仅仅是大部分人,所以这个高级筛选的功能也是必不可少的,可方便少数用户更快的找到自己所想要购买的产品! 咱们视线再往下看,红色的"空调"二

在JSP页面获取后台action封装的参数,这个参数里面又含有两个对象,二层引用,报错

问题描述 在JSP页面获取后台action封装的参数,这个参数里面又含有两个对象,二层引用,报错 javax.el.PropertyNotFoundException: Property 'userAccount' not found on type java.lang.String 上面是报错信息, 下面是JSP页面: 用户名: ${commentlist.userAccount.userName } 职业: ${commentlist.userAccount.job } ${commentl

大话“网络营销”第一篇:做好网站产品及服务的构架

&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp;      近日来一觉醒来,"营销专家"如雨后春笋,建了个网站,打了个旗号,写了几篇文章,出版了本营销手册.就自以为是"营销专家"了. 何谓营销,众口纷纭,'营销专家'仿佛拯救了中国互联网,仿佛拯救了危难中的中小企业.满口的搜索引擎,关键字推广,SEO和所谓的竞价排名. 营:经营,销:销售        经营代表了产品的生产加工