我是“长时间阅读第一次海报”,很高兴开始参加这个论坛。
我的经验是Java,Python和几种音频编程语言;我对那些糟糕的网络技术非常陌生:HTML / CSS / JavaScript。我现在正在制作两个个人网站,我想知道我是否过分依赖JavaScript。
我正在创建一个网站,其中所有页面都有一些共同的标记 - 像导航栏和一些切片的背景图像 - 所以我想我会创建一个pageInit()函数来插入大多数我的HTML。这样,如果我稍后进行更改,我只需更改脚本而不是所有页面。我想如果用户偏执到足以让JavaScript关闭,我会给他们提醒或者其他什么。这是不好的做法吗? JavaScript会被滥用吗?
提前致谢。
答案 0 :(得分:7)
你所做的更多是服务器端脚本的预处理工作,如PHP(或Python,或Java ......)实际上也可以使用服务器端JavaScript。这样,无论浏览器是否支持JavaScript,您都可以提供内容。使用JavaScript来执行服务器端技术无法做到的事情(图像轮换,动态菜单,AJAX调用等)。
答案 1 :(得分:2)
将HTML放入JavaScript中是一个坏主意。如果您想将常见的HTML保持在一起,那么许多不同的服务器端语言都有许多不同的模板解决方案。
最简单的入门方法是使用php includes或jsp includes。
<强> PHP 强>:
<html>
<body>
<?php include("header.php"); ?>
<h1>Welcome to my home page!</h1>
<p>Some text.</p>
</body>
</html>
<强> Java / JSP的强>:
<html>
<body>
<%@include file="header.jsp" %>
<h1>Welcome to my home page!</h1>
<p>Some text.</p>
</body>
</html>
答案 2 :(得分:1)
非常糟糕。考虑搜索引擎优化(SEO)。你在哪里获得该pageInit()的信息? AJAX调用还是只是一些静态文本?
答案 3 :(得分:1)
JavaScript可以被过度使用,任何其他技术都可以。确定何时过度使用它是棘手和主观的。
在这种特殊情况下,我建议使用服务器端包含技术来合并页眉,页脚,导航等。这可以像直接的Apache SSI一样简单(例如),或者如果你是使用Java,Python,PHP等构建页面,然后利用惯用方法将其他页面,视图或模板包含到当前页面中。
这样做的好处是,禁用JavaScript的用户不会对您网站的内容产生任何问题,这是一个相当重要的方面。由于在服务器端有很好的方法来解决这个问题,所以客户端不需要做任何额外的工作,这就是我认为JavaScript是一个“坏主意”的情况。
答案 4 :(得分:0)
如果你的javascript增加了用户体验,那么没有。网络正在向前发展,javascript是一项技术,可以显着增强用户体验,并将互联网转变为丰富的内容和应用程序源。它不应该被认为是坏的。
理想情况下,您的网站应该可以在没有javascript的情况下运行,但只要您提醒您的用户您的网站需要它,那么这至少就是这样。
如果您有兴趣,Jesse Skinner目前有一本关于Unobtrusive Ajax的免费电子书,该电子书讨论了使用ajax增强用户体验但不限制那些关闭javascript的用户。这是一个很好的阅读。