記錄平時碰見的兼容性問題,有更好的解決辦法但願各位提出,會隨着開發遇到問題而更新,標記爲黃色的爲未解決和猜想答案php
提出時間 | 問題描述 | 解決方案 |
2014/10/22 | submit按鈕阻止了默認事件不能使用form.submit();發送請求, | 猜想是阻止默認後,form.submit();也是屬於默認事件(不肯定)因此沒法發送 解決辦法仍是不使用先禁止默認事件再發送,而讓事件判斷能夠再發送 |
2014/10/22 | btn.onsubmit()觸發問題 | submit事件必須綁定是表單,對於按鈕是使用click事件,綁定submit事件比較合理,卻由於html5的required特性會對驗證有影響仍是拋棄這種寫法, |
2014/10/23 | 使用submit事件驗證表單的時候,對於required的元素是先是瀏覽器檢測再進行發送請求的元素進行js檢驗,主要是radio和checkbox出現問題 | 點擊按鈕進行判斷,發送請求,不要讓瀏覽器先對required進行檢測,主要是radio和checkbox出現問題,其他可使用submit事件進行 |
2014/10/23 | 對於string.replace(/(a)+/g,function(all,key){})all和key分別是什麼 | 測試得出all是當前匹配的同一個字符仍是字符分組不肯定,key能夠確定是當前匹配的字符,大概是經過增減字符串數組的長度對其常常格式轉換 |
2014/10/24 | artTemplate插入驗證碼失效(由於存在同個id致使失效),php插入驗證碼代碼後會自動生成html和js,這個須要使用div隱藏, | 把id操做替換掉,把html的元素id替換掉,click事件重寫,把替換的圖片地址傳遞過去(複製節點的操做還得要從新把id替換,繁瑣),假如不是太注重這嚴謹的結構能夠無視 |
2014/10/29 | 沒法修改ie6-8的input的type實現placeholder | ie6-8的type是隻讀模式,因此沒法修改實現placeholder |
2014/11/3 | resize後的document.documentElement.scrollWidth值不變並且是最大值 | |
2014/11/6 | required輸入表單,驗證表單會強制驗證input某個元素 | 關閉html5的驗證 第一種方法是利用form元素的novalidate屬性,它能夠關閉整個表單驗證先把表單的該屬性設置爲true,關閉表單驗證 第二種方法是利用input元素或submit元素的formnovalidate屬性,利用input元素的formnovalidate屬性可讓表單驗證對單個input元素失效,至關於利用了form元素的novalidate屬性,整個表單驗證都將關閉。 |
2014/11/10 | hover和mouseover和mouseout的實現不同 | jQuery實際是使用是mouseleave和mouseenter,區別在於mouseleave和mouseenter子元素的時候不會從新觸發事件,而mouseover和mouseout會.主要在事件間加入了判斷 vart=e.relatedTarget; if(!t||(!(t.compareDocumentPosition(this)&8)&& t!==this)){ //t有多是不存在的,target在很邊緣的狀況下,從瀏覽器外部直接移入target的狀況.alert('mouseenter') } http://www.cnblogs.com/_franky/archive/2010/05/01/1725624.html |
2014/10/11 | 複選框沒法顯示 | 根據W3C的表單規範,在checked屬性是一個布爾屬性,這意味着只要該attribute存在,即便它沒有值,或是一個空字符串,該屬性對應的property就是true,不使用attr方法使用pop方法 |
2014/11/27 | cookiewebkit測試cookie有問題 | webkit不支持本地cookie |
2014/12/20 | 路徑 | 默認ie不支持播放本地文件出於安全因素,現代瀏覽器可使用blog路徑讀取或者html5的FileReader()對象實現 |
2015/3/19 | requireJS exports:aa.a報錯a未找到 | exports模塊輸出接口一個方法名稱,*.*會執行對應下的方法會報錯 |
轉載請保留原文地址,謝謝html