2013-05-29 13 views

Odpowiedz

12

Można przedefiniować kredyty kliknij obsługi po fabuła jest zasysane w przypadku wykresów obciążenia:

chart: { 
     events:{ 
      load: function() { 
       this.credits.element.onclick = function() { 
        window.open(
         'http://www.example.com', 
         '_blank' 
        ); 
       } 
      } 
     }     
    }, 

Fiddle here.

2

http://jsfiddle.net/ptasdfmk/

// Plugin to add support for credits.target in Highcharts. 
Highcharts.wrap(Highcharts.Chart.prototype, 'showCredits', function (proceed, credits) { 
    proceed.call(this, credits); 

    if (credits.enabled && this.credits) { 
     this.credits.element.onclick = function() { 

      // dynamically create an anchor element and click it 
      // use the settings defined in highcharts (credits.target) 

      var link = document.createElement('a'); 
      link.href = credits.href; 
      link.target = credits.target; 
      link.click(); 

     } 
    } 
}); 

$('#container').highcharts({ 

    credits: { 
     enabled: true, 
     text: 'CREDITS', 
     href: 'http://example.com', 
     target: '_blank' 
    }, 

}); 

Korzystanie konfigurację Highcharts (sekcja kredyty z tarczy) nowy element łączący jest utworzony w locie i kliknięciu, po kliknięciu „kredyty”. Powiązane wydarzenia. Pozwala to na ponowne użycie kodu i działanie w oparciu o konfigurację.

+0

to „wtyczki” zmieni wszystko tagi href target i atrybuty – thecotne

+0

dzięki. Użyłem błędnie selektora '$ ('a')' - w zasadzie chciałem wyrazić, jak "utworzyć łącze w locie i wywołać go". Zaktualizowałem moją odpowiedź z poprawką. –

1

Oto rozwiązanie, które sprawdziło się u mnie.

credits: { 
    enabled: true, 
    text: 'text', 
    href: 'javascript:window.open("http://www.example.com/", "_blank")' 
}, 
Powiązane problemy