好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Ruby on Rails中jquery_ujs組件拖慢速度的問題解決

Ruby on Rails中jquery_ujs組件拖慢速度的問題解決

熱門標簽:湖州u友防封電銷卡 高德地圖標注客服 電銷機器人廠商代理 徐州網絡外呼系統哪個好 滴滴外呼系統 白銀外呼paas系統 常德電銷平臺外呼系統軟件價格 地圖標注賺錢項目注冊 百度地圖標注自定義圖片

jquery_ujs 對 rails 來說,是一個非常重要的組件,它包含在 rails 的默認組件之中。

jquery ujs 包含一些非常便捷的功能,比如確認對話框、觸發 ajax、自動禁用表單提交按鈕等,本文主要討論的是觸發 ajax 的功能。

通過添加簡單的標簽屬性,jquery ujs 可以把一個普通的鏈接或者表單轉換成 ajax 提交,而不需要寫 JavaScript 代碼。

%= link_to '關閉項目', close_project_path(project), remote: true, method: :post %>

上面的代碼會生成如下的代碼

a href="/projects/1/close" data-remote="true" data-method="post">關閉項目/a>

當用戶點擊后,它會觸發一個指向地址 /projects/1/close,method 為 post 的 ajax 請求,而不是 get 的 普通請求,這樣使得實現 ajax 調用變得非常便捷。

網速慢導致的問題
事情并不都是美好的,在網速比較慢的時候,jquery ujs 的這個實現會出問題,如果文檔還沒有加載完成,用戶就點擊了鏈接,頁面會發起一個到鏈接地址的 GET 請求,頁面會跳轉,但指向該地址的 GET 請求可以并不存在,這樣就會出錯。

有用戶有提過一個相關的 Issue,但是開發者并沒有受理,然而網速慢是中國的國情,問題我們還是得處理,借助于 CSS3 的一些特性,這個問題其實也不難解決。

pointer-events
pointer-events: none;

The element is never the target of mouse events; however, mouse events may target its descendant elements if those descendants have pointer-events set to some other value. In these circumstances, mouse events will trigger event listeners on this parent element as appropriate on their way to/from the descendant during the event capture/bubble phases.

這個屬性可以禁止元素的點擊事件,因為一般 CSS 是先加載的,我們只要控制在頁面加載完成之前給 jquery ujs 相關的元素應用 pointer-events: none; 樣式,在頁面加載完成后再去除該樣式,就可以解決網速慢的情況下,頁面沒有加載完成時用戶點擊 rmote 鏈接導致的錯誤了。

解決方案
添加如下的全局樣式,默認情況下含有 data-remote 和 data-method 屬性的標簽不可點擊,除非 body 元素含有名為 ready 的 css class。

[data-remote], [data-method] {
 pointer-events: none;

 button, input[type=submit] {
  pointer-events: none;
 }
}

body.ready {
 [data-remote], [data-method] {
  pointer-events: auto;

  button, input[type=submit] {
   pointer-events: auto;
  }
 }
}

然后通過段簡單的腳本讓頁面加載后給 body 元素添加 ready class

$(document).ready ->
 $('body').addClass('ready')

于是,問題輕松的就解決了。

標簽:普洱 公主嶺 荊門 梧州 遼寧 三沙 永州 張家界

巨人網絡通訊聲明:本文標題《Ruby on Rails中jquery_ujs組件拖慢速度的問題解決》,本文關鍵詞  Ruby,Rails,中,jquery,ujs,組件,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Ruby on Rails中jquery_ujs組件拖慢速度的問題解決》相關的同類信息!
  • 本頁收集關于Ruby on Rails中jquery_ujs組件拖慢速度的問題解決的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 狠狠色做五月深爱婷婷| 国产精品无码AV天天爽视频| 新营市| 很黄很暴力很污秽的小说| 日本国产精品aV免费爽爽| 野花社区视频www中国| 国产精品青青青高清在线观看| 婷婷色婷婷| 精品久久久久久久久人间影院| 巨人族新娘| 皮山县| 日本激情电影免费完整版| 床戏高潮视频大尺度| 久久久久久久久久一区二区三区 | 欧美乱妇电影在线观看| 无码国产AV精品一区二区视频| 男人粗大一出一进女人下面视频| 日韩一区二区三区在线播放 | 好大?好爽?深一点我受不了| 91无码国产精华最好的产品| 男女生搞黄| 久久人人爽人人爽人人片dvd| 美女直播洗澡app免费| 亚洲AV无码A片在线观看蜜桃| 女人的呼吸在线观看| 国产人成午夜免费看| 国产不卡视频在线观看| 地铁上被迫张开双腿H| 亚洲日韩Av无码毛片丝袜| 日韩伦理影院| 嗯啊用力插| 我半夜摸丰满亲妺妺C了她| 久久99久久98精品免观看软件 | 最近中文字幕mv在线视频www| 日韩高清伦理片中字在线观看 | 色欲天天婬色婬香在线| 很黄很黄小说| 搡老熟女国产BBwBBW| 亚洲xxx视频| 激情午夜天| 韩国三日本三级中文字幕|