Как включить отключенные радиокнопки?

Как включить отключенные радиокнопки? Следующий код отлично работает в IE, но не в FF или Safari. Я не могу понять, почему. Код должен отключать радиокнопки, если вы выбираете опцию «Отключить 2 радиокнопки». Он должен включать радиокнопки, если вы выбираете опцию «Включить обе радиокнопки». Оба они работают... Однако если вы не используете мышь для перемещения между двумя опциями («Включить...» и «Отключить...»), то переключатели не будут отображаться как отключенные или включенные правильно, пока вы не щелкнете в любом другом месте страницы (не на самих переключателях). Если у кого-то есть время/любопытство/чувство помощи, пожалуйста, вставьте код ниже в html-страницу и загрузите ее в браузере. Он отлично работает в IE, но проблема проявляется в FF (3 в моем случае) и Safari, все на Windows XP. function SetLocationOptions() { var frmTemp = document.frm; var selTemp = frmTemp.user; if (selTemp.selectedIndex >= 0) { var myOpt = selTemp.options[selTemp.selectedIndex]; ...

Разница в стиле закрытия - JavaScript

В чем разница в стиле закрытия? В JavaScript есть два популярных стиля замыкания. Первый я называю анонимным конструктором : new function() { var code... } и встроенная выполняемая функция : (function() { var code... })(); есть ли разница в поведении между этими двумя? Один «лучше» другого? 5 ответов В обоих случаях функция будет выполнена, единственное реальное различие заключается в том, каким может быть возвращаемое значение выражения и каким будет значение «this» внутри функции. В основном поведение new expression Фактически эквивалентно var tempObject = {}; var result = expression.call(tempObject); if (result is not an object) result = tempObject; Хотя, конечно, tempObject и result — это временные значения, которые вы никогда не увидите (это детали реализации в интерпретаторе), и не существует механизма JS для проверки «не является объектом». В общем случае метод «new function() { .. }» будет медленнее из-за необходимости создания объекта this для конст...