Browse Source

发现页面新增栏目

luyanan 7 years ago
parent
commit
448a24804b
2 changed files with 330 additions and 120 deletions
  1. 79 10
      discover.html
  2. 251 110
      js/discover.js

+ 79 - 10
discover.html

@ -10,9 +10,8 @@
10 10
<link type="text/css" href="css/common.css" rel="stylesheet">
11 11
<link type="text/css" href="css/genindex.css" rel="stylesheet">
12 12
<script type="text/javascript" src="js/jquery-1.11.1.js"></script>
13

13
<script type="text/javascript" src="js/public/swiper.min.js"></script>
14 14
</head>
15

16 15
<body>
17 16
<header id="header">
18 17
	<script src="js/header.js"></script>
@ -20,14 +19,85 @@
20 19
<div id="container">
21 20
	<div class="containerCon">
22 21
		<div class="contentCon clearfix">
23
			<div class="leftconBox floatL">
24
				<ul class="table-item" id="table-item" style="position: relative;min-height:500px;"></ul>
25
				<div class="tcdPageCode"></div>
22
			<div class="leftconBox floatL" style="background: #f4f6f8;">
23
				<div class="slide-box clearfix">
24

25
				</div>
26
				<div class="table-box">
27
					<div class="table-tab">
28
						<ul class="table-tab-item clearfix">
29
							<li class="table-tab-slide table-tab-slide-active">最新文章</li>
30
							<li class="table-tab-slide">前沿动态</li>
31
							<li class="table-tab-slide">学术经验</li>
32
							<li class="table-tab-slide">分析检测</li>
33
							<li class="table-tab-slide">会议培训</li>
34
							<li class="rightbtn"><span>更多栏目</span><em class="foldtr"></em>
35
								<ul class="table-drop">
36
									<li class="table-tab-slide">科袖访谈</li>
37
									<li class="table-tab-slide">招聘招生</li>
38
								</ul>
39
							</li>
40
							
41
						</ul>
42
					</div>
43
					<div class="table-body">
44
					    <div class="haveData">
45
					    	<div class="table-item-list">
46
					    		<ul class="listitemdiv listmorediv" id="table-item-0"></ul>
47
								<div class="tcdPageCode"></div>
48
					    	</div>
49
					    	<div class="table-item-list">
50
					    		<ul class="listitemdiv listmorediv" id="table-item-1"></ul>
51
								<div class="tcdPageCode"></div>
52
					    	</div>
53
					    	<div class="table-item-list">
54
					    		<ul class="listitemdiv listmorediv" id="table-item-2"></ul>
55
								<div class="tcdPageCode"></div>
56
					    	</div>
57
					    	<div class="table-item-list">
58
					    		<ul class="listitemdiv listmorediv" id="table-item-3"></ul>
59
								<div class="tcdPageCode"></div>
60
					    	</div>
61
					    	<div class="table-item-list">
62
					    		<ul class="listitemdiv listmorediv" id="table-item-4"></ul>
63
								<div class="tcdPageCode"></div>
64
					    	</div>
65
					    	<div class="table-item-list">
66
					    		<ul class="listitemdiv listmorediv" id="table-item-5"></ul>
67
								<div class="tcdPageCode"></div>
68
					    	</div>
69
					    	<div class="table-item-list">
70
					    		<ul class="listitemdiv listmorediv" id="table-item-6"></ul>
71
								<div class="tcdPageCode"></div>
72
					    	</div>
73
					    </div>
74
					</div>
75
				</div>
26 76
			</div>
27
			<div class="advertBox floatR">
28
				<ul class="advertItem">
29
					<li><a href="download.html" target="_blank"><img src="images/find_img_xiazai_nor.png" /></a></li>
30
				</ul>
77
			<div class="rightconBox floatR">
78
				<div class="conItem conBlock displayNone">
79
					<div class="form-item otherBlock">
80
						<div class="aboutTit">重大新闻</div>
81
						<div class="form-result currentArt currentArt2">
82
							<ul id="importNews">
83
							</ul>
84
						</div>
85
					</div>	
86
				</div>
87
				<div class="conItem advertBox">
88
					<ul class="advertItem">
89
						<li><a href="download.html" target="_blank"><img src="images/find_img_xiazai_nor.png" /></a></li>
90
					</ul>
91
				</div>
92
				<div class="conItem conBlock displayNone">
93
					<div class="form-item otherBlock">
94
						<div class="aboutTit">热门文章</div>
95
						<div class="form-result currentArt currentArt2">
96
							<ol class="hotList" id="hotNews">
97
							</ol>
98
						</div>
99
					</div>	
100
				</div>
31 101
			</div>
32 102
		</div>
33 103
	</div>
@ -41,6 +111,5 @@
41 111
<script type="text/javascript" src="js/jquery.page.js"></script>
42 112
<script type="text/javascript" src="js/common.js"></script>
43 113
<script type="text/javascript" src="js/discover.js"></script>
44

45 114
</body>
46 115
</html>

+ 251 - 110
js/discover.js

@ -3,126 +3,286 @@ $(function() {
3 3
	$(".headnav li").eq(1).addClass("navcurrent");
4 4
	loginStatus();//判断个人是否登录
5 5
	var userid = $.cookie("userid");
6
	discover(10, 1,true);
7
	/*发现列表显示*/
8
	function discover(pageSize, pageNo,isbind) {
6
	importNews();
7
	hotNews();
8
	var linkNum=0;//栏目类别导航
9
	if(linkNum==0){
10
		listShow(1,0,true);
11
	}
12
	$(document).bind("click",function(e){ 
13
		var target = $(e.target); 
14
		if(target.closest(".table-tab-item").length == 0){ 
15
			$(".table-drop").hide(); 
16
			$(".rightbtn").find("em").removeClass("unfoldtr").addClass("foldtr");
17
		} 
18
	})
19
	$(".table-tab-item").on("mouseenter","li.rightbtn",function(){
20
		$(this).find(".table-drop").show();
21
		$(this).find("em").removeClass("foldtr").addClass("unfoldtr");
22
	}).on("mouseleave","li.rightbtn",function(){
23
		$(this).find("em").removeClass("unfoldtr").addClass("foldtr");
24
		$(this).find(".table-drop").hide();
25
	})
26
	
27
	$(".table-drop").on("click","li",function(){
28
		$(".rightbtn").find("span").html($(this).text());
29
	})
30
	$(".table-tab-item").on("click","li",function(){
31
		if($(this).is('.table-tab-slide')){
32
			linkNum = $(this).index(".table-tab-slide");
33
			$(".table-tab-slide").removeClass("table-tab-slide-active");
34
			$(this).addClass("table-tab-slide-active");
35
			$(".table-drop").fadeOut(1000);
36
			$(".rightbtn").find("em").removeClass("unfoldtr").addClass("foldtr");
37
			$(".table-item-list").eq(linkNum).show().siblings().hide();
38
			if($(".rightbtn").find("li").is(".table-tab-slide-active")){
39
				$(".rightbtn").addClass("table-tab-slide-active");
40
			}else{
41
				$(".rightbtn").removeClass("table-tab-slide-active");
42
			}
43
			if(linkNum==0){
44
				listShow(1,0,true);
45
			}else{
46
				var thisNum=linkNum+2;
47
				listShow(1,thisNum,true);
48
			}
49
		}else{
50
			$(this).find(".table-drop").show();
51
		}
52
	})
53
	
54
	//轮播加载页面
55
	$.ajax({
56
		"url":"slideTab.html",///data/inc/col_banner.html
57
		"dataType":"html",
58
		"success":function(result){
59
			$(".slide-box").html(result);
60
			bannerRotate.bannerInit();// 轮播
61
		}
62
	
63
	})
64
	//重大新闻
65
	function importNews() {
9 66
		$.ajax({
10
			"url": "/ajax/article/findHot",
11
			"type": "get",
12
			"async": true,
13
			"data": {
14
				"pageSize": pageSize,
15
				"pageNo": pageNo
67
			"url" :"/ajax/article/find",
68
			"type" :  "GET" ,
69
			"dataType" : "json",
70
			"data" :{
71
				"col":9,//重大新闻
72
				"pageSize":5,
73
				"pageNo":1
74
			},
75
			"success" : function(data) {
76
				if (data.success){
77
					console.log(data)
78
					var $data=data.data.data;
79
					if($data.length>0){
80
						$("#importNews").parents(".conItem").removeClass("displayNone");
81
						var oLeng=$data.length<5?$data.length:5;
82
						for(var i=0;i<oLeng;i++) {
83
							var listLi=$('<li class="flexCenter"></li>').appendTo($("#importNews"));
84
							var str='<a href="articalShow.html?articleId='+$data[i].articleId+'"><p class="h2Font ellipsisSty-2"><em class="circlePre"></em>'+$data[i].articleTitle+'</p>'+
85
								'<span class="smalltip">'+commenTime($data[i].publishTime)+'</span></a></li>'
86
							$(str).appendTo(listLi);
87
						}
88
					}
89
				}
90
			},
91
			"error":function(){
92
				$.MsgBox.Alert('提示','链接服务器超时')
93
			}
94
		});
95
	}
96
	//热门文章
97
	function hotNews(){
98
		$.ajax({
99
			"url" :"/ajax/article/lastestPublished",
100
			"type" :  "GET" ,
101
			"dataType" : "json",
102
			"success" : function(data) {
103
				if (data.success){
104
					console.log(data)
105
					var $data=data.data;
106
					if($data.length>0){
107
						$("#hotNews").parents(".conItem").removeClass("displayNone");
108
						var oLeng=$data.length<10?$data.length:10;
109
						for(var i=0;i<oLeng;i++) {
110
							var listLi=$('<li class="flexCenter"></li>').appendTo($("#hotNews"));
111
							var str='<a href="articalShow.html?articleId='+$data[i].articleId+'"><p class="h2Font ellipsisSty-2">'+$data[i].articleTitle+'</p></a>'
112
							$(str).appendTo(listLi);		
113
						}
114
					}
115
				}
116
			},
117
			"error":function(){
118
				$.MsgBox.Alert('提示','链接服务器超时')
119
			}
120
		});
121
	}
122
	//栏目列表
123
	function listShow(pageNo,colNum,isbind){
124
		$.ajax({
125
			"url" :"/ajax/article/find",
126
			"type" :  "GET" ,
127
			"dataType" : "json",
128
			"data" :{
129
				"col":colNum,
130
				"pageSize":10,
131
				"pageNo":pageNo
16 132
			},
17 133
			"beforeSend": function() {
18 134
				$("#table-item").append('<img src="../images/loading.gif" class="loading"  style="position: absolute;left: 50%; top: 50%;" />');
19 135
			},
20
			"success": function(data) {
21
				 
22
				if(data.success && data.data != null) {
23
					var itemlist = '';
24
					$("#table-item").html("");
25
					for(var i = 0; i < data.data.data.length; i++) {
26
						var itemlist = '<li><div class="table-item-media">';
27
						itemlist += '<a href="" target="_blank" class="table-item-logo" id="userimg"></a>';
28
						itemlist += '<div class="table-item-name clearfix">';
29
						itemlist += '<a href="" target="_blank" id="userUrl"><span class="nameSpan" id="nameSpan"></span></a><em class="authiconNew " title=""></em>';
30
						itemlist += '<p><span class="timeLabel" id="time"></span></p></div></div>';
31
						itemlist += '<div class="table-item-cell"><a href="" target="_blank" id="newsurl">';
32
						itemlist += '<div class="table-item-img" id="newsimg"></div>';
33
						itemlist += '<div class="table-item-body">';
34
						itemlist += '<p class="ellipsisSty" id="centent"></p>';
35
						itemlist += '<p><em class="cmpLable" id="newstype"></em></p>';
36
						itemlist += '</div></a></div></li>';
37
						$itemlist = $(itemlist);
38
						$("#table-item").append($itemlist);
39
						var datalist = data.data.data[i];
40
						var type = datalist.type;
41
						$itemlist.find("#centent").text(datalist.name);
42
						$itemlist.find("#time").text(commenTime(datalist.createTime));
43
						if(type == 1) { //专家文章
44
							$itemlist.find("#newstype").text("文章");
45
							$itemlist.find("#newstype").addClass("articalLabel");
46
							$itemlist.find("#newsimg").addClass("artical-default");
47
							$itemlist.find("#userimg").addClass("userhead");
48
							$itemlist.find("#newsurl").attr("href", "articalShow.html?articleId=" + datalist.id );
49
							if(datalist.image) {
50
								$itemlist.find("#newsimg").attr("style", "background-image: url(/data/article/" + datalist.image + ");");
51
							}
52
							userFun(datalist.owner, $itemlist);
53
						} else if(type == 2) { //企业文章
54
							$itemlist.find("#newstype").text("文章");
55
							$itemlist.find("#newstype").addClass("articalLabel");
56
							$itemlist.find("#newsimg").addClass("artical-default");
57
							$itemlist.find("#userimg").addClass("cmplogohead");
58
							$itemlist.find("#newsurl").attr("href", "articalShow.html?oFlag=1&articleId=" + datalist.id );
59
							if(datalist.image) {
60
								$itemlist.find("#newsimg").attr("style", "background-image: url(/data/article/" + datalist.image + ");");
61
							}
62
							cmpFun(datalist.owner, $itemlist)
63
						} else if(type == 3) { //专家资源
64
							$itemlist.find("#newstype").text("资源");
65
							$itemlist.find("#newstype").addClass("resourceLabel");
66
							$itemlist.find("#newsimg").addClass("resource-default");
67
							$itemlist.find("#userimg").addClass("userhead");
68
							$itemlist.find("#newsurl").attr("href", "resourceShow.html?resourceId=" + datalist.id);
69
							if(datalist.image) {
70
								$itemlist.find("#newsimg").attr("style", "background-image: url(/data/resource/" + datalist.image + ");");
71
							}
72
							userFun(datalist.owner, $itemlist);
73
						} else if(type == 4) { //企业资源
74
							$itemlist.find("#newstype").text("资源");
75
							$itemlist.find("#newstype").addClass("resourceLabel");
76
							$itemlist.find("#newsimg").addClass("resource-default");
77
							$itemlist.find("#userimg").addClass("cmplogohead");
78
							$itemlist.find("#newsurl").attr("href", "resourceShow.html?resourceId=" + datalist.id);
79
							if(datalist.image) {
80
								$itemlist.find("#newsimg").attr("style", "background-image: url(/data/resource/" + datalist.image + ");");
136
			"success" : function(data) {
137
				if (data.success){
138
					console.log(data)
139
					var idItem=0;
140
					if(colNum>0){
141
						idItem=colNum-2;
142
					}
143
					console.log(idItem)
144
					$("#table-item-"+idItem).html("");
145
					var strNo='<div class="nodatabox"><div class="nodata"><div class="picbox picNull"></div>'
146
						strNo+='<div class="txtbox"><p class="noContip">该栏目暂时没有任何动态</p></div></div></div>/div>'
147
					var dataStr=data.data.data;
148
					if(dataStr.length>0){
149
						for(var i=0;i<dataStr.length;i++) {
150
							if(colNum>0){
151
								var listLi=$('<li class="flexCenter"></li>').appendTo($("#table-item-"+idItem));
152
								otherColum(dataStr[i],listLi);
153
							}else{
154
								var listLi=$('<li class="flexCenter"></li>').appendTo($("#table-item-0"));
155
								lastestColum(dataStr[i],listLi);
81 156
							}
82
							cmpFun(datalist.owner, $itemlist)
83 157
						}
158
					}else{
159
						$("#table-item-"+idItem).html(strNo);
160
						$("#table-item-"+idItem).parent().find(".tcdPageCode").hide();
84 161
					}
85 162
					//分页
86 163
					if(isbind==true){
87
						$(".tcdPageCode").createPage({
164
						$("#table-item-"+idItem).parent().find(".tcdPageCode").off("click").createPage({
88 165
							pageCount: Math.ceil(data.data.total / 10),
89 166
							current: data.data.pageNo,
90 167
							backFn: function(p) {
91
								$("#table-item").html("");
92
								discover(10, p,false);
168
								$("#table-item-"+idItem).html("");
169
								listShow(p,colNum,false);
93 170
								document.body.scrollTop = document.documentElement.scrollTop = 0;
94 171
							}
95 172
						});
96 173
					}
97 174
					$(".loading").remove();
98 175
				}
99

176
			},
177
			"error":function(){
178
				$.MsgBox.Alert('提示','链接服务器超时')
179
			}
180
		});
181
	}
182
	function lastestColum(dataStr,listLi){
183
		var madiaHead="../images/default-artical.jpg";
184
		if(dataStr.articleImg) {
185
			madiaHead ='/data/article/' + dataStr.articleImg ;
186
		}
187
		var sowU="";
188
		if(dataStr.pageViews!=0){
189
			if(dataStr.articleAgree!=0){
190
				sowU='<span>阅读量 '+dataStr.pageViews+'</span><span>赞 '+dataStr.articleAgree+'</span>'
191
			}else{
192
				sowU='<span>阅读量 '+dataStr.pageViews+'</span>'
193
			}
194
		}
195
		var columTag='';
196
		if(dataStr.colNum>0){
197
			columTag='<span class="columTag">'+columnType[dataStr.colNum].shortName+'</span>';
198
		}
199
		var strAdd = '';
200
		strAdd += '<a traget="_blank" href="articalShow.html?articleId='+ dataStr.articleId +'" class="flexCenter urlgo">';
201
		strAdd += '<div class="lefthead articalhead" style="background-image:url('+ madiaHead +')">'+columTag+'</div>';
202
		strAdd += '<div class="centercon centercon2"><p class="h1font ellipsisSty-2">'+ dataStr.articleTitle +'</p>';
203
		strAdd += '<div class="h2font showInfo clearfix">';
204
		strAdd += '<span class="ownerName"></span>';
205
		strAdd += '<span class="time">'+ commenTime(dataStr.publishTime) +'</span>';
206
		strAdd += sowU
207
		strAdd += '<span class="comment"></span>';
208
		strAdd += '</div></div>';
209
		strAdd += '</a>';
210
		
211
		var $strAdd = $(strAdd);
212
		listLi.append( $strAdd);
213
		commentnum(dataStr.articleId, $strAdd) //文章评论数	
214
		if(dataStr.articleType==1){
215
			userFun(dataStr.professorId, $strAdd);
216
		}else{
217
			cmpFun(dataStr.orgId, $strAdd);
218
		}
219
	}
220
	
221
	function otherColum(dataStr,listLi){
222
		var madiaHead="../images/default-artical.jpg";
223
		if(dataStr.articleImg) {
224
			madiaHead ='/data/article/' + dataStr.articleImg ;
225
		}
226
		var sowU="";
227
		if(dataStr.pageViews!=0){
228
			if(dataStr.articleAgree!=0){
229
				sowU='<span>阅读量 '+dataStr.pageViews+'</span><span>赞 '+dataStr.articleAgree+'</span>'
230
			}else{
231
				sowU='<span>阅读量 '+dataStr.pageViews+'</span>'
232
			}
233
		}
234
		var strAdd = '';
235
		strAdd += '<a traget="_blank" href="articalShow.html?articleId='+ dataStr.articleId +'" class="flexCenter urlgo">';
236
		strAdd += '<div class="lefthead articalhead" style="background-image:url('+ madiaHead +')"></div>';
237
		strAdd += '<div class="centercon centercon2"><p class="h1font ellipsisSty-2">'+ dataStr.articleTitle +'</p>';
238
		strAdd += '<div class="h2font showInfo clearfix">';
239
		strAdd += '<span class="ownerName"></span>';
240
		strAdd += '<span class="time">'+ commenTime(dataStr.publishTime) +'</span>';
241
		strAdd += sowU
242
		strAdd += '<span class="comment"></span>';
243
		strAdd += '</div></div>';
244
		strAdd += '</a>';
245
		
246
		var $strAdd = $(strAdd);
247
		listLi.append($strAdd);
248
		commentnum(dataStr.articleId, $strAdd) //文章评论数	
249
		if(dataStr.articleType==1){
250
			userFun(dataStr.professorId, $strAdd);
251
		}else{
252
			cmpFun(dataStr.orgId, $strAdd);
253
		}
254
	}
255
	//查文章留言数
256
	function commentnum(articleId, $itemlist) {
257
		$.ajax({
258
			"url": "/ajax/leaveWord/lwCount",
259
			"type": "GET",
260
			"dataType": "json",
261
			"async": false,
262
			"data": {
263
				"articleId": articleId
264
			},
265
			"success": function(data) {
266
				if(data.success) {
267
					if(data.data>0){
268
						$itemlist.find(".comment").text("留言 " + data.data);
269
					}
270
				}
100 271
			},
101 272
			"error": function() {
102 273
				$.MsgBox.Alert('提示', '链接服务器超时')
103 274
			}
104 275
		});
105 276
	}
106

107 277
	/*用户信息*/
108
	function userFun(id, $itemlist) {
278
	function userFun(id,$listItem) {
109 279
		$.ajax({
110 280
			"url": "/ajax/professor/baseInfo/" + id,
111 281
			"type": "get",
112 282
			"async": true,
113 283
			"success": function(data) {
114
				 
115 284
				if(data.success && data.data) {
116
					$itemlist.find("#nameSpan").text(data.data.name);
117
					if(data.data.hasHeadImage == 1) {
118
						$itemlist.find("#userimg").attr("style", "background-image: url(/images/head/" + data.data.id + "_m.jpg);");
119
					}
120
					$itemlist.find("#userimg").attr("href", "userInforShow.html?professorId=" + data.data.id);
121
					$itemlist.find("#userUrl").attr("href", "userInforShow.html?professorId=" + data.data.id);
122
					var userType = autho(data.data.authType, data.data.orgAuth, data.data.authStatus);
123
					$itemlist.find(".authiconNew").attr("title", userType.title);
124
					$itemlist.find(".authiconNew").addClass(userType.sty);
125

285
					$listItem.find(".ownerName").text(data.data.name);
126 286
				}
127 287
			},
128 288
			"error": function() {
@ -130,9 +290,8 @@ $(function() {
130 290
			}
131 291
		});
132 292
	}
133

134 293
	/*企业用户信息*/
135
	function cmpFun(id, $itemlist) {
294
	function cmpFun(id,$listItem) {
136 295
		$.ajax({
137 296
			"url": "/ajax/org/" + id,
138 297
			"type": "get",
@ -140,25 +299,10 @@ $(function() {
140 299
			"success": function(data) {
141 300
				if(data.success && data.data) {
142 301
					if(data.data.forShort) {
143
						$itemlist.find("#nameSpan").text(data.data.forShort);
302
						$listItem.find(".ownerName").text(data.data.forShort);
144 303
					}else{
145
						$itemlist.find("#nameSpan").text(data.data.name);
304
						$listItem.find(".ownerName").text(data.data.name);
146 305
					}
147
					$itemlist.find("#userimg").attr("style", "background:#fff");
148
					$itemlist.find("#userimg").html('<div class="boxBlock"><img class="boxBlockimg companyImg" src=""></div>');
149
					if(data.data.hasOrgLogo) {
150
						$itemlist.find(".companyImg").attr("src", "/images/org/" + data.data.id + ".jpg");
151
					}else{
152
						$itemlist.find(".companyImg").attr("src", "/images/default-icon.jpg");
153
					}
154
					$itemlist.find("#userimg").attr("href", "cmpInforShow.html?orgid=" + data.data.id);
155
					$itemlist.find("#userUrl").attr("href", "cmpInforShow.html?orgid=" + data.data.id);
156
					if(data.data.authStatus==3){
157
						$itemlist.find(".authiconNew").addClass("authicon-com-ok").attr("title", "认证企业");;	
158
					}/*else{
159
						$itemlist.find(".authiconNew").addClass("authicon-com-no").attr("title", "未认证企业");;
160
					}*/
161
				
162 306
				}
163 307
			},
164 308
			"error": function() {
@ -166,7 +310,4 @@ $(function() {
166 310
			}
167 311
		});
168 312
	}
169

170
	
171

172 313
})