应该存在着一类人:

1.看到美丽的网站时,就会F12,看看他是怎么实现的

2.看到网站数据是自己需要的时候,就会F12,看看他是怎么拿到数据的

3.看到网站一个有趣的模块时,,就会F12,看看他是怎么制作的

看久了,就知道了大概规律

有时不懂,也会去google,baidu一下

---

观察网站,一般是这样的吧:

1.瞎点点,看看有什么特别的东西吸引你的

2.右击查看元素,或F12,去查看元素Dom节点

3.看看效果展示是,Dom节点的变化

4.看看外链和内部的脚本,如果压缩了,就用解压工具解压后看

5.有的网站脚本很长,需要耐心分解,分析

6.对于数据,用network 页查看他的自由,一般会在脚本类型里可以找到数据,也有相应的请求地址,耐心分析一下参数意思即可

7.知道了数据,他的应用很简单

如果是json,先试试可不可以用ajax方法获取,一般跨域不允许,这时只能用服务器去模拟抓取了

如果是script,那就用script标签进行加载,然后用加载完成事件进行后续数据显示操作

8.css方面,F12页面直接看的见

---

跨域请求:

Jquery:

$.getScript(url,success(response,status))

$.getJSON(url,[data],[callback])

---

备注onload事件:(抄来的)

1.script标签:

IE的 script 元素支持onreadystatechange事件,不支持onload事件。

FF的script 元素不支持onreadystatechange事件,只支持onload事件。

如果要在一个<script src="http://xiaogai1010.blog.163.com/blog/xx.js"> 加载完成执行一个操作,FF使用onload事件就行了,IE下则要结合onreadystatechange事件和this.readyState,以 下是IE的一个例子:

<script type="text/javascript" src="http://xiaogai1010.blog.163.com/blog/xx.js" onreadstatechange="if(this.readyState=='load') alert('loaded');"></script>

this.readyState的值为'loaded'或者'complete'都可以表示这个script已经加载完成.

如何结合IE和FF的区别?参考一下jquery的源码:

var script = document.createElement('script');

script.src="http://xiaogai1010.blog.163.com/blog/xx.js";

script.onload = script.onreadystatechange = function(){

if(  ! this.readyState     //这是FF的判断语句,因为ff下没有readyState这人值,IE的readyState肯定有值

|| this.readyState=='loaded' || this.readyState=='complete'   // 这是IE的判断语句

){

alert('loaded');

}

};

注意:readyState是针对IE浏览器,载入完毕的情况是loaded,缓存的情况下可能会出现readyState为complete。所以两个不能少。

2.iframe标签:

对于用js创建的iframe的加载,一定要在其加载完成之后再进行操作,否则会出现问题
(1)在ie中,判断iframe加载完成,用onreadystatechange,但是IE会执行两次,分别是ifr1.readyState == 'interactive'和
ifr1.readyState == 'complete',所以需要判断 redyState=='complete' ;然后再对iframe进行相关的操作;
(2)但是在标准浏览器以及ie9之后,用onload来判断加载的完成。

[经验][JS]如何观察网站,进而模仿的更多相关文章

  1. Restive.js – 轻松让网站变成响应式和自适应

    Restive.js 是一个 jQuery 插件,可以帮助您轻松快捷地添加响应式功能到你网站,适应几乎所有拥有 Web 功能的设备.使用设备检测,高级管理断点,以及方向管理的组合,Restive.js ...

  2. Sequence.js - 适合电子商务网站的图片滑块

    Sequence.js 是一个非常现代的图片滑动效果,特别适合电子商务网站或者企业产品展示功能.带有图片缩率图,能够呈现全屏图片浏览效果.结合 CSS3 Transition 实现响应式的滑块效果. ...

  3. Nodejs学习笔记(十五)--- Node.js + Koa2 构建网站简单示例

    目录 前言 搭建项目及其它准备工作 创建数据库 创建Koa2项目 安装项目其它需要包 清除冗余文件并重新规划项目目录 配置文件 规划示例路由,并新建相关文件 实现数据访问和业务逻辑相关方法 编写mys ...

  4. [转]Nodejs学习笔记(十五)--- Node.js + Koa2 构建网站简单示例

    本文转自:https://www.cnblogs.com/zhongweiv/p/nodejs_koa2_webapp.html 目录 前言 搭建项目及其它准备工作 创建数据库 创建Koa2项目 安装 ...

  5. Nodejs学习笔记(十五)—Node.js + Koa2 构建网站简单示例

    前言 前面一有写到一篇Node.js+Express构建网站简单示例:http://www.cnblogs.com/zhongweiv/p/nodejs_express_webapp.html 这篇还 ...

  6. Angular JS + Express JS入门搭建网站

    3月份开始,接到了新的任务,跟UI开发有关,用的是Angular JS,Express JS等技术.于是周末顺便学习下新技术. 组里产品UI架构如下: 其中前端,主要使用Angular JS框架,另外 ...

  7. [JS,NodeJs]个人网站效果代码集合

    上次发的个人网站效果代码集合: 代码集合: 1.彩色文字墙[鼠标涟漪痕迹] 2.彩色旋转圆环 [模仿http://www.moma.org/interactives/exhibitions/2012/ ...

  8. 利用JS实现购物网站商品放大镜效果

    大家几乎都有在网上购物的经验,有的网站会有一个商品放大镜功能, 就是把鼠标移到图片上的时候,旁边会有另外一张大的图片展示,等同于 放大镜效果,那这样的效果怎样实现的呢,我把代码发给大家,请大家参考. ...

  9. JS 劫持来源网站并做指定跳转

    有时候给网站做流量,免不了要做一些网站劫持的JS跳转,这里贴上一段劫持来源网站的JS跳转方法,很简单 <script> // 获取来源网站 var slyar = document.ref ...

随机推荐

  1. Alsa驱动snd_soc_read的底层实现

    在分析snd_soc_codec_driver的结构体时,发现有些芯片的驱动中定义了字段reg_word_size, reg_cache_size, reg_cache_default,但没有定义re ...

  2. dell 电脑关闭触摸板的。

    桌面计算机(点击右键)----管理----设备管理器-----鼠标------选择触摸板(ps/2 兼容鼠标)---右击------跟新驱动-------浏览计算机查找------从计算机列表中选择- ...

  3. js判定IE

    var ie=!-[1,]; 这句话对于多数前端来说都很熟悉,遇到判定是否是ie浏览器就用这个,但是对于由来以及为什么可能没有深入了解过. 短短6个bytes就做了判定.这个表达式是利用IE和标准浏览 ...

  4. nodejs初窥

    1. node.js不是js应用,而是js运行平台.Node.js采用C++编写,是一个js的运行环境. 2. node.js采用事件驱动.异步编程,为网络服务而设计.Node.js的网络应用模块包括 ...

  5. CenOS6.3 ssh 公钥认证报错:Permission denied (publickey,gssapi-keyex,gssapi-with-mic)

    转载自 http://laowafang.blog.51cto.com/251518/1364298 1.说明: ssh无密码用户远程登录,一直以来使用是debian操作系统,对用户目录权限要求没有关 ...

  6. 字符编码(ASCII,Unicode和UTF-8) 和 大小端

    本文包括2部分内容:“ASCII,Unicode和UTF-8” 和 “Big Endian和Little Endian”. 第1部分 ASCII,Unicode和UTF-8 介绍 1. ASCII码 ...

  7. 五分钟,运用cocoaui库,搭建主流iOS app中我的界面

    本项目基于天天团购项目,在上一篇中有说到! 首先介绍一些cocoaui,是国内的一名程序员做的开源的开源系统,目的是为了简化ios布局!官网地址:www.cocoaui.com,github地址:ht ...

  8. scrum1.4---Sprint 计划

    燃尽图

  9. SQL各种连接查询详解(左连接、右连接..)

    一.交叉连接(cross join) 交叉连接(cross join):有两种,显式的和隐式的,不带on子句,返回的是两表的乘积,也叫笛卡尔积. 例如:下面的语句1和语句2的结果是相同的.语句1:隐式 ...

  10. CSS3的变形transform、过渡transition、动画animation学习

    学习CSS3动画animation得先了解一些关于变形transform.过渡transition的知识 这些新属性大多在新版浏览器得到了支持,有些需要添加浏览器前缀(-webkit-.-moz-.- ...