利用index实现:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
.hide{display:none;}
.item{
height: 38px;
width: 800px;
border: 1px solid #dddddd;
margin: 0 auto;
}
.item .item-content{
float: left;
line-height: 38px;
padding: 0 15px;
border-right: 1px solid #dddddd;
cursor: pointer;
}
.item .active{
background-color: #eeeeee;
color: red;
font-weight: bold;
}
.content{
height: 500px;
width: 800px;
border: 1px solid #dddddd;
margin: 0 auto;
}
.content .content-content{}
</style>
</head>
<body>
<div class="item">
<div class="item-content active">商品介绍</div>
<div class="item-content">详细参数</div>
<div class="item-content">客户评价</div>
</div>
<div class="content">
<div class="content-content">内容1</div>
<div class="content-content hide">内容2</div>
<div class="content-content hide">内容3</div>
</div> <script src="jquery-3.3.1.js"></script>
<script>
// 利用索引实现,代码简洁,但依赖全局唯一的样式item-content content-content,所以注意这二种新式只在这儿使用,且item-content和content-content的内容顺序要对应。
$('.item-content').click(function () {
$(this).addClass('active').siblings().removeClass('active');
$('.content-content').eq($(this).index()).removeClass('hide').siblings().addClass('hide');
});
</script>
</body>
</html>

利用自定义属性实现:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
.hide{display:none;}
.item{
height: 38px;
width: 800px;
border: 1px solid #dddddd;
margin: 0 auto;
}
.item .item-content{
float: left;
line-height: 38px;
padding: 0 15px;
border-right: 1px solid #dddddd;
cursor: pointer;
}
.item .active{
background-color: #eeeeee;
color: red;
font-weight: bold;
}
.content{
height: 500px;
width: 800px;
border: 1px solid #dddddd;
margin: 0 auto;
}
.content .content-content{}
</style>
</head>
<body>
<div class="item">
<div itemId="1" class="item-content active">商品介绍</div>
<div itemId="2" class="item-content">详细参数</div>
<div itemId="3" class="item-content">客户评价</div>
</div>
<div class="content">
<div contentId="1" class="content-content">内容1</div>
<div contentId="3" class="content-content hide">内容3</div>
<div contentId="2" class="content-content hide">内容2</div>
</div> <script src="jquery-3.3.1.js"></script>
<script>
// 利用自定义属性itemId contentId相对应,这样不依赖于顺序,children会用到字符串拼接
$('.item').children().click(function () {
$(this).addClass('active').siblings().removeClass('active');
var index = $(this).attr('itemId');
$('.content').children("[contentId="+index+"]").removeClass('hide').siblings().addClass('hide');
});
</script>
</body>
</html>

  

jQuery实现商品详情 详细参数页面切换的更多相关文章

  1. 当前jQuery Mobile支持的6种页面切换方式

    切换方式 data-transition属性值 横向幻灯方式 slide 自上向下幻灯方式 slideup 自下向上幻灯方式 slidedown 中央弹出 pop 淡入淡出 fade 旋转弹出 fli ...

  2. 22 Flutter仿京东商城项目 inappbrowser 加载商品详情、保持页面状态、以及实现属性筛选业务逻辑

    加群452892873 下载对应21可文件,运行方法,建好项目,直接替换lib目录,在往pubspec.yaml添加上一下扩展. cupertino_icons: ^0.1.2 flutter_swi ...

  3. Android点击跳转到淘宝的某一商品详情页或者某一店铺页面

    最近项目的有个需求是点击购买资料按钮进入淘宝界面,简单分析一下,如果用户手机有淘宝就打开淘宝的页面,没有的话也可以选择使用webView进行展示,还是使用手机浏览器进行展示. 判断有无淘宝的代码就不贴 ...

  4. JAVAEE——宜立方商城09:Activemq整合spring的应用场景、添加商品同步索引库、商品详情页面动态展示与使用缓存

    1. 学习计划 1.Activemq整合spring的应用场景 2.添加商品同步索引库 3.商品详情页面动态展示 4.展示详情页面使用缓存 2. Activemq整合spring 2.1. 使用方法 ...

  5. jquery Mobile入门—多页面切换示例学习

    1.在JQuery Mobile中,多个页面的切换是通过<a>元素.并将<href>属性设置为#+对应的id号的方式进行的. 2.多页面切换示例代码: 复制代码代码如下: &l ...

  6. Flutter实战视频-移动电商-48.详细页_详情和评论的切换

    48.详细页_详情和评论的切换 增加切换的效果,我们主要是修改这个地方 这样我们的评论的内容就显示出来了 最终代码 details_web.dart import 'package:flutter/m ...

  7. App 仿淘宝:控制详情和购买须知样式切换,控制商品详情和购买须知选项卡的位置(固定在顶部还是正常)

    CSS: <div id="details" ref="details" class="details" :class="t ...

  8. 第04项目:淘淘商城(SpringMVC+Spring+Mybatis)【第九天】(商品详情页面实现)

    https://pan.baidu.com/s/1bptYGAb#list/path=%2F&parentPath=%2Fsharelink389619878-229862621083040 ...

  9. jquery mobile页面切换效果(Flip toggle switch)(注:jQuery移动使用的数据属性的列表。 )

    1.页面切换(data-transition)

随机推荐

  1. 交换机的默认网关(跨网段telnet)

    实验要求:配置一台交换机,并配置默认网关,使不同网段的主机能够远程telnet连接到交换机 拓扑图如下: 交换机配置: enable 进入特权模式 configure terminal 进入全局模式 ...

  2. linux 将一个文件分解成多个不同名文件

    1.通过c直接实现 #include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include & ...

  3. JavaScript中的内置对象-8--2.String-符串对象 方法; 截取方法; 综合应用; 其他方法;

    JavaScript内置对象-2String(字符串) 学习目标 1.掌握字符串对象 方法: charAt() charCodeAt() indexOf() lastIndextOf() charAt ...

  4. 【转载】 强化学习(七)时序差分离线控制算法Q-Learning

    原文地址: https://www.cnblogs.com/pinard/p/9669263.html ------------------------------------------------ ...

  5. 【leetcode】70-ClimbingStairs

    problem ClimbingStairs 题意: 爬台阶问题,每次可以爬1个或者两个台阶,问如果有n个台阶,可以有多少种方法爬到顶部? 解析: 对于n=1,有一种方法:n=2,有两种方法: 对于n ...

  6. xdoj-1298(模拟--简易SQL解释器)

    题目链接 一 知识点: 1  substr有2种用法:       假设:string s = "0123456789";      string sub1 = s.substr( ...

  7. MySQL主从、环境搭建、主从配制

    1. MySQL主从介绍    2.环境搭建   2.主从配制:修改主配制文件:vim /etc/my.cnf添加: server_id = ###log_bin = diy_name然后保存重启:/ ...

  8. A Spy in the Metro(UVA 1025 ACM/ICPC World Finals2003)

    ---恢复内容开始--- 题意:有n(2<=n<=50)个车站,从左到右编号为1~n,有M1辆列车从第1站向右开,还有M2辆列车从第N站向左开.在时刻0,间谍从第1站出发,目的是在时刻T( ...

  9. NetCore平台下使用RPC框架Hprose

    NetCore下使用RPC框架Hprose https://www.jianshu.com/p/c903fca44d5d Hprose是国内非常优秀的RPC框架,和其它RPC框架比较起来,其它框架一般 ...

  10. C++学习(二十四)(C语言部分)之 结构体1

    1.结构体 存放多个不同类型的数据 但是是相关联的 数组 存放多个相同类型的数据 结构体是存放多个相关联的不同类型的数组 struct 定义一个结构体类型 自定义类型 2.结构体定义方式 定义类型最通 ...