摘要:目录Ajax后退解决方案一Ajax后退解决方案二Ajax后退解决方案三Ajax后退解决方案四Ajax后退解决方案五五、使用history.pushState产生历史,popstate事件处理后退 0 0 pushState和popstate是HTML5为history对象新增的方法和事件。虽然...
阅读全文
摘要:目录Ajax后退解决方案一Ajax后退解决方案二Ajax后退解决方案三Ajax后退解决方案四Ajax后退解决方案五三、通过修改location.hash产生历史,hashchange事件处理后退 0 0 每次ajax操作去改变location.hash的值,每次修改后地址栏均会有所体现。在wi...
阅读全文
摘要:目录Ajax后退解决方案一Ajax后退解决方案二Ajax后退解决方案三Ajax后退解决方案四Ajax后退解决方案五三、使用iframe,通过修改iframe.src产生历史,回调写在iframe对应的html页面中 0 0 与方案2相同也是使用iframe.src来产生历史,也需要一个单独的h...
阅读全文
摘要:目录Ajax后退解决方案一Ajax后退解决方案二Ajax后退解决方案三Ajax后退解决方案四Ajax后退解决方案五二、使用iframe,通过修改iframe.src产生历史 0 0 较上一篇多了个blank.html,是一个空html架子,没有JS逻辑代码,如下blank.html 每次aj...
阅读全文
摘要:目录Ajax后退解决方案一Ajax后退解决方案二Ajax后退解决方案三Ajax后退解决方案四Ajax后退解决方案五一、使用iframe,通过document.write产生历史 0 0 点击按钮后更新页面DOM(模拟ajax提交),会发现浏览器后退按钮可用了。点击后退,可返回到前一个状态。这种...
阅读全文
摘要:如下<!doctype html><html> <head> <meta charset="utf-8"> <title>IE6/7不支持hashchange事件</title> <script type="text/javascript"> function handler(){ alert('triggered') } document.onclick = function(){ var t = Math.random(); lo...
阅读全文
摘要:我们知道获取元素的浮动属性,各浏览器中使用的属性不同。大家都知道IE中使用styleFloat,标准浏览器使用cssFloat。<div>test</div><script> var div = document.getElementsByTagName('div')[0]; // IE div.currentStyle.styleFloat; // none // FF/Chrome/Safari/Opera var sty = window.getComputedStyle(div, null); sty.cssFloat; // non
阅读全文
摘要:IE下有上下滚动条。其它浏览器没有。先看一个示例<!DOCTYPE HTML><HTML> <HEAD> <meta charset="utf-8" /> <title>textarea</title> </HEAD> <BODY> <textarea></textarea> </BODY></HTML>textarea没有任何样式,IE6/7/8/9/10下如下圈住部分可以看到出现了上下滚动条。其它浏览器则没有。在看看overfl
阅读全文
摘要:元素名称: 例如“textarea”CSS属性: 例如“overflow”
阅读全文
摘要:JavaScript中设置元素的浮动属性(float),标准浏览器使用cssFloat,IE旧版本使用styleFloat。jQuery的css方法统一了两种写法,直接使用float属性即可,如下css方法中传参数“float”即可以设置也可以获取元素的float。<div id="d1">float div</div><script type="text/javascript">
('#d1').css('float', 'right'); var str =(&
阅读全文
摘要:为了叙述简单,这里仅拿width示例。情景一,元素style属性设置了width/heighttest如上,使用el.style.width即可。如果没有在style属性中设置width,那么使用el.style.width将获取不到,如下test 所有浏览器中弹出的是空字符串。即使将样式嵌在页面...
阅读全文
摘要:我们知道获取元素的实际宽高在IE中可以使用currentStyle属性。但如果没有显示的去设置元素的宽高,那么使用该属性将获取不到,获取的值为auto。如下abcd IE6/7/8/9中输出的都是auto。如果显示的设置了宽高,那么输出的就是实际宽高。如下1,通过内联style属性设置abcd ...
阅读全文
摘要:jQuery的属性模块提供了如下方法attr/removeAttrprop/removeProp(1.6)addClass/removeClass/toggleClass/hasClassval提供了几个静态方法以支持JQ对象以上方法,如jQuery.attr 对应 attr,即jq对象的attr方法内部调用了jQuery.attr。其次还有jQuery.removeAttr -> removeAttrjQuery.prop -> prop看代码可发现attr和prop方法中都直接调用的是jQuery.accessattr: function( name, value ) { re
阅读全文
摘要:事件代理的实现原理很简单:利用浏览器中事件的冒泡(event bubbling)和事件源(target || srcElement)。某些场景中特别适合使用事件代理,它有如下好处需要管理的handler更少。占用的内存更少(创建的驻留在内存中的handler少了)。DOM元素与代码更少的绑定。DOM...
阅读全文
摘要:如下 IE6/7 :依次返回 false/trueIE8 :依次返回 空字符串/checkedIE9/10/Firefox/Safari/Chrome/Opera :依次返回 null/空字符串input[type=radio]的情况同上,类似的布尔属性还有:autofocus|autoplay|a...
阅读全文
摘要:IE6/7中不能通过setAttribute设置元素的style属性,也不能通过getAttribute获取元素的style属性值。它获取的是一个style对象。如下<div style="color:blue">div test</div><script type="text/javascript"> var div1 = document.getElementsByTagName('div')[0]; // 获取style属性值 var val = div1.getAttribute('st
阅读全文