我嘗試了以下Ag網格實現示例: Example - Multiple Row Selection。特殊示例 - 多行選擇。當我選擇用鉻Mozilla的歌劇移行,一切都很好,因爲你可以在圖片1.在Internet Explorer中,在網格中移動行選擇選擇附加文本
可惜看到的,我也有支持IE瀏覽器。當我在IE中執行相同的操作時,還選擇了一些其他文本:上面的標題等等。有沒有辦法解決這個問題?
p.s.爲這個例子準備一個plunkr更好還是來自ag-grid網站的例子足夠了?
我嘗試了以下Ag網格實現示例: Example - Multiple Row Selection。特殊示例 - 多行選擇。當我選擇用鉻Mozilla的歌劇移行,一切都很好,因爲你可以在圖片1.在Internet Explorer中,在網格中移動行選擇選擇附加文本
可惜看到的,我也有支持IE瀏覽器。當我在IE中執行相同的操作時,還選擇了一些其他文本:上面的標題等等。有沒有辦法解決這個問題?
p.s.爲這個例子準備一個plunkr更好還是來自ag-grid網站的例子足夠了?
關閉用戶選擇你頁面,把這個CSS到身體: 體{ 用戶選擇:無; }
網格對網格執行此操作,但不會嘗試爲其他應用程序執行此操作(它不應該)。問題在於IE如何理解shift-click,所以我不認爲這是一個網格問題,最好是解決它。當他們是詳細的應用程序時(我猜你的是,如果你使用的是Ag-Grid),關閉用戶在單頁網絡應用上的選擇是非常標準的。
個人而言,對於選擇行(不是單元格!),我更喜歡行的開始處的複選框。它可能會解決您的問題與IE瀏覽器。
使用屬性上的列定義checkboxSelection,如:
{headerName: "Athlete", field: "athlete", checkboxSelection: true},
如果你想強制通過複選框選擇行,你可以在gridOptions設置屬性suppressRowClickSelection到真正。
謝謝。是的,該複選框可以解決問題,但不幸的是,我不能在我的項目中使用它。我找到了一個臨時解決方案,並在下面發佈。 – CodeMonkey
目前,該解決方案是使用:
$window.getSelection().removeAllRanges();
在
onRowSelected
監聽器。所以,每次更改行選擇時,IE中其他元素的選擇都將被刪除。不是一個好的解決方案,但更好的是沒有。 Mozilla MDN
這是瞬間發生的嗎?當我嘗試這個解決方案時,我仍然可以在屏幕上的其他位置看到其他位置的選擇,並且看起來有點不和諧。 – dsh
@dsh不幸的是,並非瞬間。在短時間內(100-300ms)出現錯誤的選定區域,然後消失。目前,我還沒有找到任何其他解決方案:或者使用複選框,如上面提到的Alexander Zbinden或這個「黑客」。 – CodeMonkey
它的工作原理。我只需要添加主體'{-ms-user-select:none}'將此規則應用於Internet Explorer。 – CodeMonkey