网站首页试用了大量JS,寻求解决之道。

2,669 次浏览

网站首页是由各个子栏目、频道组成的,并且使用大量JS,代码写得也比较乱。这样的首页有必要要存在吗?如果一定要存在,请问要怎样修改?

网站大致类似下列两图

网站首页





代码类似这样


点击首页链接进入


追加问题
    5 人参与回答
黑山
黑山 · 搜外论坛html5技术顾问
苑东风 等 1 人赞同该回答

存在的必要与否,这个只能你们自己来评定。
至于JS方面,可以找个稍微懂前端的人,来帮你们优化下代码。把js都搞到一个外部文件里去调用即可。
或者一些可要可不要的特效,直接去掉。也或者,可以用更简单的办法来实现原来需要js才能实现的东西。

无言
无言 · 目标是全端工程师,无言
苑东风 等 1 人赞同该回答

JS外部调用,重要信息提前
跟图片相比js还是比较小的

王生
王生 · 万变不离其宗,Seoer
苑东风 等 1 人赞同该回答

JS封装即可

李刚
李刚 · 认真学习SEO,认真钻研SEO,认真做好SEO。
苑东风 等 1 人赞同该回答

可以将JS进行封装
在网页头部写上:

在外部建立一个xxx.js的文件,注意路径一定要对上。
比如:
<title>网站标题</title>
<meta name="Keywords" content="关键词" >
<meta name="Description" content="描述" >
<script src="/js/xxx.js" type="text/javascript"></script>

在xxx.js文件中写上:
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers.document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a.indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a;}}
}

function MM_swapImgRestore() { //v3.0
var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a)&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

杨欣
杨欣 · 又叫小房子(网络昵称),微信:bdxiaofangzi;QQ:2233736929
苑东风 等 1 人赞同该回答

第一,对重要的JS进行封装和外部调用。
第二,对重要的内容要一定保证搜索引擎抓取到,不要使用JS屏蔽,毕竟搜索引擎目前没有公开说可以抓取JS。而且通过查看抓取诊断里面的代码,也发现JS里面的内容无法显示在首页。
第三,使用JS的同时尽量保证只是效果,而不影响网站具体内容代码的展现。

回复问答禁止带推广链接,了解合理带链接的方法