Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 何时可以使用框架集_Java_Jquery_Html_Spring - Fatal编程技术网

Java 何时可以使用框架集

Java 何时可以使用框架集,java,jquery,html,spring,Java,Jquery,Html,Spring,在Java EE应用程序页面中,我有header.jsp、side menu.jsp、body.jsp和footer.jsp。侧菜单包含jQuery动态树插件。当用户从树中单击菜单项时,应该使用适当的页面(也是.jsp)更改主体。我使用的是tiles框架,在这里我导入layout.jsp页面中的所有js代码。我希望实现复制框架集的效果,但不实际使用框架集。我认为框架集很难管理,而且需要时间来加载 有人能建议我如何处理这个问题吗?如果在激活dynatree节点时使用AJAX获取每个页面,则必须手动

在Java EE应用程序页面中,我有header.jsp、side menu.jsp、body.jsp和footer.jsp。侧菜单包含jQuery动态树插件。当用户从树中单击菜单项时,应该使用适当的页面(也是.jsp)更改主体。我使用的是tiles框架,在这里我导入layout.jsp页面中的所有js代码。我希望实现复制框架集的效果,但不实际使用框架集。我认为框架集很难管理,而且需要时间来加载

有人能建议我如何处理这个问题吗?如果在激活dynatree节点时使用AJAX获取每个页面,则必须手动更新页面。如果我在
body.jsp
中使用
IFRAME
,那么我必须重新导入所有插件js代码,因为框架将无法访问主页上的js功能


我需要高效的html页面管理。

因为您使用的是jQuery,所以您应该能够将AJAX与应用事件(或)的
live
方法结合使用。此方法称为“事件委派”,即使jQuery会像魔术一样为您执行此操作,您也应该这样做。根据您使用的jQuery版本的不同,您可以使用
delegate
而不是
live
——本质上是一样的

框架集在HTML5中实际上是不推荐使用的——您应该避免使用它们,因为很快新的用户代理将根本不支持它们。请参阅一篇冗长的讨论,希望能阻止您考虑这种方法

IFRAME
方法是一种攻击。你也许能让它工作,但你正在把一个方形的钉子敲入一个圆孔

总之,如果您不想直接深度链接到内部页面,AJAX是最好的首选解决方案。与事件委托相结合,它确实优于任何旧的或有黑客攻击性的解决方案。而且,一定要使用“”的概念——如果有人单击了这些链接并关闭了javascript,内容仍应加载。这意味着您可以从常规的直接链接开始,然后为那些启用了javascript的用户添加花哨的内容。否则,您将关闭一定比例的用户,使其无法访问您主页上的任何内容

当您使用AJAX进行导航时,您仍然需要为一个用户制定计划,该用户不了解他们在您的站点或任何其他站点上单击链接时的区别。他们将使用浏览器的“后退”按钮,返回到谷歌,而不是最后一页!这是因为他们在你的网站上的导航对于他们的浏览器来说不像是唯一的页面。在较新的浏览器中,有一些工具可以处理这个问题,但是细节稍微超出了这个答案的范围。有关操纵浏览器历史记录的更多信息,请查看MDN

文档

  • jQuery的
    直播
    -
  • jQuery的
    委托
    -
  • 大卫·沃尔什出席活动代表团-
  • Jakob Nielsen关于框架集-
  • 修改浏览器历史记录时的MDN-
  • jQuery for Designers博客,提供了
    委托的示例用例
  • 维基百科关于渐进增强的文章-

既然您使用的是jQuery,那么您应该能够将AJAX与应用事件(或)的
live
方法结合使用。此方法称为“事件委派”,即使jQuery会像魔术一样为您执行此操作,您也应该这样做。根据您使用的jQuery版本的不同,您可以使用
delegate
而不是
live
——本质上是一样的

框架集在HTML5中实际上是不推荐使用的——您应该避免使用它们,因为很快新的用户代理将根本不支持它们。请参阅一篇冗长的讨论,希望能阻止您考虑这种方法

IFRAME
方法是一种攻击。你也许能让它工作,但你正在把一个方形的钉子敲入一个圆孔

总之,如果您不想直接深度链接到内部页面,AJAX是最好的首选解决方案。与事件委托相结合,它确实优于任何旧的或有黑客攻击性的解决方案。而且,一定要使用“”的概念——如果有人单击了这些链接并关闭了javascript,内容仍应加载。这意味着您可以从常规的直接链接开始,然后为那些启用了javascript的用户添加花哨的内容。否则,您将关闭一定比例的用户,使其无法访问您主页上的任何内容

当您使用AJAX进行导航时,您仍然需要为一个用户制定计划,该用户不了解他们在您的站点或任何其他站点上单击链接时的区别。他们将使用浏览器的“后退”按钮,返回到谷歌,而不是最后一页!这是因为他们在你的网站上的导航对于他们的浏览器来说不像是唯一的页面。在较新的浏览器中,有一些工具可以处理这个问题,但是细节稍微超出了这个答案的范围。有关操纵浏览器历史记录的更多信息,请查看MDN

文档

  • jQuery的
    直播
    -
  • jQuery的
    委托
    -
  • 大卫·沃尔什出席活动代表团-
  • Jakob Nielsen关于框架集-
  • 修改浏览器历史记录时的MDN-
  • jQuery for Designers博客,提供了
    委托的示例用例
  • 维基百科关于渐进增强的文章-

一旦你掌握了所有这些,你可以研究使用history.pushState和window.onpopstate来保持后退和前进按钮的工作状态,至少在Firefox和Chrome中是这样。很好,我将添加一个关于这方面的简介。一旦你掌握了所有这些,你可以研究使用history.pushState和window.onpopstate来保持后退和前进按钮的工作状态,至少在Firefox和Chrome中是这样。很好,我将添加一个关于这一点的简介。“什么时候可以使用框架集?”?