2015-07-03 4 views
0

Мне нужно показать верхушку узла узлов графика при наведении движения только при проверке значения флажка. Иначе он не должен показывать.Видимость подсказки на основе условия d3.js

Я пробовал код следующим образом. Но это не работает.

.on('mouseover', function (d) { 
    if(document.getElementById("chkEnableDisableNames").checked == true){ 
    d.show ; 
} 
else { 
    return null; 
}}) 

jsfiddle

+0

Если не '.он()' быть вызван каким-либо другим элементом или селекторе? Также, пожалуйста, разместите соответствующую часть HTML. – martynasma

+0

добавлен jsfiddle link .. вы можете проверить там –

+0

Спасибо. Знайте проблему. В ближайшее время опубликует ответ. – martynasma

ответ

0

Примечание: Я буду иметь в виду ваш jsFiddle например, как код там различен, чем сниппета вы публикуемую в вашем вопросе.

Код имеет несколько вопросов:

1) Вы используете пользовательскую функцию showhidefunc() регулировать дисплей наконечника. Эта функция находится за пределами вашей сферы события парения и поэтому не наследует это локальные переменные, так что вы должны передать его в параметре:

.on('mouseover', function(d) { 
    showhidefunc(d); 
} 

// ... 

function showhidefunc(d) { 
    // ... 
} 

2) tip.show() не свойство, а метод, который должен быть передается в параметре с узлом для отображения наконечника для работы:

tip.show(d); 

Кроме этого ваш код выглядит хорошо.

Вот ваш обновленный (рабочий) скрипку, как указано выше: http://jsfiddle.net/f8R3M/39/

+0

Работает точно так же, как для моего требования. Спасибо –

Смежные вопросы