zoukankan      html  css  js  c++  java
  • 装备管理系统项目分析

    整个项目采取的是混合开发模式;

    页面的结构是:后台渲染,jsp页面的嵌套,js,jquery直接获取不到jsp页面的<irame>标签里面的dom
    采用js API: contentDocument获取jsp嵌套页面的DOM

    例如:  $("html").contentDocument.getElementById("这个值是iframe标签的ID"),获取完了irame后,在采用常规获取dom的方法获取ifame里面的DOM

    注意:jsp页面可能是多层jsp嵌套,也就是多层的irame的嵌套,要多次获取嵌套的iframe标签,再进行dom操作

    关于项目中的动态资源加载,采用jquery的getScript()API

    $.getScript() 方法通过 HTTP GET 请求载入并执行 JavaScript 文件      $.getScript("xxx.js",fucntion(){xxxxxxxxx})

    postMessage API :可以实现跨源通信,两个不同的脚本文件之间

    例如: 1111.js window.postMessage("xxx","*")   ||  2222.js window.addEventListener("message",function(event){  event.data  data是事件对象的第一个值  })    ==>存在兼容性问题

    当您使用postMessage将数据发送到其他窗口时,始终指定精确的目标origin,而不是*。 恶意网站可以在您不知情的情况下更改窗口的位置,因此它可以拦截使用postMessage发送的数据。 

    如果这种嵌套多层iframe页面的网页,通常使用到top属性,类比window,top一般指代是否是嵌套顶层页面,常用来做判断实现页面跳转重定向,防止恶意嵌套网页到其他页面,因为其他页面里面嵌套的iframe也能通过dom获取到自己网页数据的数据(比如:用户登陆信息)等,相关属性还有parent,self等

  • 相关阅读:
    Redis主从、事务、哨兵、消息、代理分片
    Java中反射
    java操作文件流对象
    Java中线程和线程池
    杂记
    Hadoop伪分布式环境快速搭建
    Git 基础
    React Context(一):隐式传递数据
    搭建React项目(一):在网页中使用
    jQuery MD5 加密
  • 原文地址:https://www.cnblogs.com/ccnNL/p/9604617.html
Copyright © 2011-2022 走看看