posts - 193,  comments - 520,  trackbacks - 0
          把firefox下js程序向ie兼容,一直用firefox調試,今天在ie下跑跑遇到了很多問題。
          1.程序中用到prototype.js,對于事件監聽,我一直這樣處理
          Event.observe(job.jobDiv.timeDiv, "mousedown", eway.TimeTableDiv.selectMoveJobDiv);
          在firefox下完全正常,但在ie下就找不到視圖所附加的對象了,改回來
          job.jobDiv.timeDiv.onmousedown=?eway.TimeTableDiv.selectMoveJobDiv
          這樣兩個瀏覽器都可以跑。附一個簡單的測試
          <!DOCTYPE?HTML?PUBLIC?"-//W3C//DTD?HTML?3.2?Final//EN">
          <html>
          <head>????
          <title></title>
          <script?src="lib/prototype/prototype.js"?type="text/javascript"></script>
          <script>
          window.onload
          =function(){
          ??
          var?b=new?Button("wokao",$('simple'));
          ??}??
          function?Button(value,domEl){
          ??
          this.domEl=domEl;
          ??
          this.value=value;
          ??
          this.domEl.buttonObj=this;
          //??this.domEl.onclick=this.clickHandler;
          ??Event.observe(this.domEl,?"mousedown",?this.clickHandler);
          }

          Button.prototype.clickHandler
          =function(){
          ??
          var?buttonObj=this.buttonObj;
          ??
          var?value=(buttonObj?&&?buttonObj.value)??
          ????buttonObj.value?:?
          "unknown?value";
          ??alert(value);
          }
          </script>
          <div?class="resizeMe"?id="simple">
          ????
          <p>This?is?just?a?clean?DIV</p>
          </div>
          </body>
          </html>
          2.處理td的跨行和跨列,都必須這樣寫
          td.setAttribute("rowSpan",2);
          td.setAttribute(
          "colSpan",2);
          注意rowSpancolSpan中間字母都是大寫的,而寫成rowspan,colspan在firefox下是沒有任何問題的。
          3.在拖拽層的時候會出現鼠標經過的文字被選中的現象,解決這個問題非常簡單,當你開始拖拽前即你用鼠標點中你想要拖拽的層,這時候對事件進行處理
          e=e||window.event;
          if(e.stopProgation){
          e.stopPropagation();
          }
          else{
          e.cancelBubble?
          =?true;
          }
          if(e.preventDefault){
          e.preventDefault();
          }
          else{
          e.returnValue?
          =?false;
          }?

          如果使用
          prototype.js,可以簡單為一行代碼
          Event.stop(e);



          http://www.aygfsteel.com/ronghao 榮浩原創,轉載請注明出處:)
          posted on 2007-02-13 19:07 ronghao 閱讀(1450) 評論(0)  編輯  收藏 所屬分類: ajax相關
          <2007年2月>
          28293031123
          45678910
          11121314151617
          18192021222324
          25262728123
          45678910

          關注工作流和企業業務流程改進。現就職于ThoughtWorks。新浪微博:http://weibo.com/ronghao100

          常用鏈接

          留言簿(38)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          常去的網站

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 沙河市| 盖州市| 辽源市| 贵定县| 剑川县| 永城市| 建始县| 肥东县| 商都县| 朔州市| 安化县| 安多县| 通州市| 文昌市| 花莲县| 武平县| 大英县| 桓仁| 布拖县| 贺兰县| 五峰| 那曲县| 沂水县| 秭归县| 六安市| 乌兰县| 义马市| 财经| 阳东县| 潮安县| 固始县| 皋兰县| 神农架林区| 株洲县| 扎赉特旗| 通城县| 白银市| 丁青县| 河津市| 邳州市| 德兴市|