Javascript установить стиль рамки 0px - PullRequest
0 голосов
/ 29 августа 2011

Я новичок в javascript, поэтому, пожалуйста, прости мой наивный вопрос!

Я просто хочу установить стиль рамки на 1 пиксель, видимый, когда мышь вводит изображение, и обратно на 0, когда мышь уходит.Вот что я сделал до сих пор:

function cardMouseEnter(ctrl) {
    document.getElementById(ctrl).style.border = "solid 1px";
}

function cardMouseLeave(ctrl) {
    document.getElementById(ctrl).style.border = "solid 0px";
}

С IE все работает нормально, в то время как с Firefox и Safari, когда граница установлена ​​в 1px, она не вернется к 0px.

Я уверен, что есть подвох ... Я ЗНАЮ, что это можно сделать в теге html каждого объекта, поэтому, пожалуйста, не говорите мне, что ...

Ответы [ 4 ]

0 голосов
/ 29 августа 2011

Проблема была onmouseleave НЕ СУЩЕСТВУЕТ вне IE!

Я заменил его на onmouseout , и теперь он отлично работает со всеми 3 браузерами ...

0 голосов
/ 29 августа 2011

Если вы только переключаете ширину границы, обращайтесь только к ширине границы

document.getElementById(ctrl).style.borderWidth = '1px';
0 голосов
/ 29 августа 2011

Нет проблем в коде, который вы нам показываете.См. http://jsfiddle.net/4x2qU/ - граница появляется, когда указатель мыши находится над словом «тест», и снова исчезает после удаления мыши.Это работает, хотя я оставил ошибки из вашего примера: цвет границы не устанавливается (по умолчанию «черный») и переключает все параметры границы вместо изменения только ширины границы.

0 голосов
/ 29 августа 2011

Вы пробовали none?

function cardMouseLeave(ctrl) {
    document.getElementById(ctrl).style.border = "none";
}

Если вы хотите использовать 0 Я думаю, что правильный синтаксис просто 0 без «solid» или «px».

...