首页 > 教程 > 关键词  > dhtml最新资讯  > 正文

DHTML编写经得起考验的可移植代码

2008-04-25 10:57 · 稿源:新云

动态HTML(DHTML)技术——实际上是多项技术的组合,包括CSS、DOM和JavaScript——为Web设计者提供了多种选择,能让他们向其网页中添加动态菜单和各种导航的小玩意。但是,这些技术也带来臃肿的代码,导致浏览器互不兼容的问题和向老平台移植性的丢失。简而言之,用于HTML代码编写的动态选择越多,出现错误代码的可能性也就越大。但是只要遵照一些简单的编写原则,你可以保证自己代码的健壮性和高度的可移植性,而不用放弃对DHTML创新技术的巨大依赖。

第一:了解你的浏览器

浏览器互不不兼容是一个困扰Web开发人员多年的问题。但是在很多方面,随着浏览器和标示语言两者复杂性的增加,人们对其兼容性的关注有所减少。然而,有些结构上的冲突的确还在,尤其在你必须考虑自己页面的可访问性的时候。

例如,不是能够在Windows平台上运行的所有Netscape Navigator和Internet Explorer特性都能运行在Mac和UNIX系统上。而且不是所有能够运行在Internet Explorer 4.0上的HTML 4.0代码都可以运行在Navigator 4.0。(Navigator 4.0不支持HTML 4.0所有弹出文本的特性。)而且,<BUTTON>标签对Navigator也不友好,诸如此类等等。这个互不兼容的单子很长,即便到现在也是如此。所以除了浏览器探测技术,你现在必须还要能够使用HTML、XHTML和CSS确认等。

第二:编写允许功能缩减的代码

跨平台所导致的错误是对健壮代码的一个重大威胁,但是向后兼容会更严重。尽管软件巨人们都在花大力气推广新版本,但是Internet Explorer和Netscape Navigator两者4.0以前的版本仍在大行其道,所以你的代码应该要能在其上运行——即使你使用的是DHTML的代码。

缩减功能的概念在软件工程中十分常见,它是指对逐渐失效而非突发性失效有所准备。其主旨就是设计一种机制,让相当一部分功能能在不同环境导致性能降低的情况下获得保留。这个概念还被相当多地用于软件,谨慎的开发人员会预计有缺陷的运行条件,并按照部分功能在碰到错误的时候得到保护的方式编写应用程序代码。

在编写Web应用程序代码的时候这一点尤其重要。想一想吧:任何对Internet世界开放的Web页面都需要运行在任何版本、任何数量的浏览器上。由定义可知,没有什么HTML代码能够运行在所有的浏览器上;错误是不可避免的。Java在低于版本3的浏览器上运行时会出问题。对象模型特性在跨当前不同浏览器时会不稳定。有些版本的Navigator只有使用插件才能正常处理ActiveX。当前不同的浏览器对层叠样式表(CSS)的支持也不尽相同等等。这个问题清单也很长。

有合格的设计者不仅应该为每个Web应用程序创建强健的错误处理机制,这要尽量多地考虑环境变化和潜在不兼容性的问题,还应该让应用程序的代码在碰到问题时能够保证更多的功能。

  • 相关推荐
  • 大家在看
  • 亚马逊Twitch被黑客入侵 大量源代码和财务细节被公布

    据报道,整个Twitch的源代码、用户评论历史和详细的财务记录已被一名匿名黑客发布到网上。Twitch是亚马逊旗下的视频和游戏服务。现在,其服务的全部源代码,其移动、桌面和客户端应用程序,以及一个未发布的Steam商店竞争项目都被泄露了。据VGC报道,这些文件是由一个匿名黑客泄露给4chan的。这个人说,这次泄漏是为了"促进在线视频流媒体领域的更多破坏和竞争,[因为Twitch的]社区是一个令人作呕的有毒污水池"。VGC已经证实,黑客

  • 代码暗示苹果准备为Genesis汽车提供CarKey支持

    据外媒报道,苹果可能很快就会为现代旗下的Genesis豪华车推出CarKey数字密钥集成功能,从而将兼容性扩展到宝马之外的汽车品牌。据MacRumors报道,在iOS 15配置文件中发现了Apple Pay NFC功能的代码现将Genesis作为支持的汽车接入终端的“合作伙伴”的证据。此前,宝马是唯一一家上榜的汽车制造商。目前,Genesis和现代汽车都没有公布是否支持CarKey,但前者在2021年GV80和G80车型上首次推出了Android手机的数字按键功能。据称,跟?

  • 备受争议同时 《使命召唤》新反作弊系统Rocochet驱动代码外泄

    昨晚,动视宣布为《使命召唤》系列多款游戏启动全新的反作弊解决方案,该方案在《使命召唤:战区》上线之后随后在《使命召唤:先锋》上线。这套新反作弊方案名为“Rocochet”,是由动视自己设计的,重点是遏制猖獗的游戏作弊行为。“Ricochet”是一个将获得核心权限 (Kernel) 的反作弊软件,这意味着动视将能够访问电脑上所有的内容,以及后台的数据。不过动视承诺,支持 Ricochet 的内核级驱动程序只在《使命召唤:战地》游戏中

  • 代码托管平台GitLab提交IPO申请 年化营收已超2亿美元

    在 2020 年底的第二次股份销售中,GitLab 已获得 60 亿美元的估值。本周二,该公司正式提交了 IPO 申请。GitLab 表示,其最近一个季度的营收增长了 69%、至 5810 万美元,但净亏损还是扩大到了 4020 万美元。即便如此,作为微软旗下代码托管与分享协作平台 GitHub 的一大竞争对手,GitLab 还是被不少开发者和投资者们所看好。CNBC 指出,GitLab 是一家云软件提供商,允许开发商在其平台上分享代码和开展项目协作,并且致力于成为一

  • 代码风起,平台化和生态化支撑厂商规模化发展

    摘要:在云计算和移动互联网的助推下,企业数字化转型加快,软件应用开发的需求激增,低代码平台应势崛起。从发展路径看,中国低代码平台厂商大致可分为两类:应用衍生类厂商和原生低代码厂商。低代码厂商最终发展趋势将是平台化和生态化,通过联合第三方开发商等合作伙伴,打造生态,为探索更具规模化能力的商业模式打下基础。当前,企业数字化转型不断深入,快速、敏捷地开发数字化应用成为了实现业务数字化的关键。不过,企业却

  • 代码平台三大关键能力,破局应用开发难题

    数字化时代的到来,用户需求不断飙升,专业开发人员缺口问题显著,方便高效的低代码开发技术革命悄然开始,并不断渗透到各行各业。企业的数字化转型涉及多个方面,而低代码开发平台强悍的关键技术能力,能够突破技术及实现手段上的瓶颈,减免决策者的后顾之忧,因此"低代码技术"作为解决企业数字化转型以及增强企业复原力的有力手段,得到越来越多的关注。早在 2019 年,全球知名研究机构Gartner 就对企业级低代码开发平

  • 免费开源低代码平台,J2PaaS即将震撼发布

    如果说智慧物联网、大数据、人工智能等技术的发展是企业向数字化转型的催化剂,那么低代码技术就是转型过程中的助推剂,能够很好的帮助企业快速落地数字化解决方案,减少试错成本,提高企业市场业务的应变能力。经过这几年的市场验证,低代码对于企业的好处已经愈发明显,尤其是这三点:低代码技术的通用性,既可以填补企业用人需求,又可以降低企业用人成本;低代码技术的便捷性,可以减少开发周期,有错立即改,降低了试错成本;低?

  • 免费开源低代码平台,J2PaaS即将震撼发布

    如果说智慧物联网、大数据、人工智能等技术的发展是企业向数字化转型的催化剂,那么低代码技术就是转型过程中的助推剂,能够很好的帮助企业快速落地数字化解决方案,减少试错成本,提高企业市场业务的应变能力。经过这几年的市场验证,低代码对于企业的好处已经愈发明显,尤其是这三点:1、低代码技术的通用性,既可以填补企业用人需求,又可以降低企业用人成本;2、低代码技术的便捷性,可以减少开发周期,有错立即改,降低了试错成

  • X-Live 讲师 Jenny:从工程师到架构师,我在融云的代码人生

    “直播的时候我应该看哪里?要不要跟观众互动?互动放在什么环节?”面对自己的第一场 X-Live 直播,Jenny 的问题连珠炮般发出。她是小红薯忠实用户,平常最爱看博主的穿搭直播,而自己当“主播”的首秀,是一场 “基于融云 IM+RTC 的国际化适配” 的纯技术分享。分享内容,完全基于她在融云六年的实践历炼展开。从传统到创新,从“提要求”到“做服务”2014 年,Jenny 的人生打开了一个新脚本。她结束了传统通信行业的职业旅程,?

  • 代码网站GitLab上市首日大涨35% 市值达149亿美元

    美国当地时间周四,代码共享平台GitLab在纳斯达克上市,上市首日大涨35%,市值达149亿美元。

这篇文章对你有价值吗?

  • 热门标签

热文

  • 3 天
  • 7天