1
工作

我有一個dxChartdxTooltip不工作在IE,Chrome瀏覽器

  var chart = $("#chartContainer4").dxChart(); 

其中的我走了傳說矩形:

  var PayerLegendBoxes = $("#chartContainer4 .dxc-legend g rect"); 

而且使用dxTooltip用於顯示鼠標懸停。

  PayerLegendBoxes.each(function() { 



       var nextElementHTML = this.nextSibling.innerHTML; 

       var currElementTip = nextElementHTML + "tip"; 

       var currElement = this; 



       var title = chart.append("<span style='display:none;' id=" + currElementTip + ">" + nextElementHTML + "</span>"); 



       var tooltipSimple = $("#" + currElementTip).dxTooltip({ 

        target: currElement, 

       }).dxTooltip("instance"); 



       $(currElement).unbind().hover(function() { 

        tooltipSimple.toggle() 

       }); 



      }); 

這在Chrome中工作正常,但不在IE中。

是否有跨瀏覽器功能的錯誤?

+1

你用什麼版本的IE? – Sergey

+0

@Sergey IE10專用 – xameeramir

+0

您在瀏覽器控制檯中是否有任何錯誤? – Sergey

回答

1

貌似問題是在這條線:

var nextElementHTML = this.nextSibling.innerHTML; 

nextSibling.innerHTML回報IE undefined。所以,我建議你使用這樣的:

// jQuery provides a "cross-browser" way here 
var nextElementHTML = $(this).next().text(); 

還有一修正這一行:

var currElementTip = nextElementHTML + "tip"; 

nextElementHTML有時會包含空格符號。所以,你應該清理動作:

var currElementTip = (nextElementHTML + "tip").replace(/\s/g, "_"); 

更新的樣本是在這裏 - http://jsfiddle.net/5y8f4zt0/

相關問題