О встроенной валидации я читал и немало. Она несомненно хороша, но не даёт той гибкости, которую можно получить с js (например, пользовательские сообщения об ошибках или единый вид этих ошибок в разных браузерах). Насчёт нецелесообразности проверки всех форм - согласен, тут меня что-то не в ту степь понесло. Спасибо.
Мария Коробкоголовых, смотрите примеры, которые я скинул. Визуально надо такие же карточки товара, но с более гибкой реализацией (без указания высоты карточки и чтобы она выглядела целостной).
Что непонятного, я же привёл 2 сайта в качестве примеров. При наведении на товар должно появляться скрытое содержимое, которое: а) не должно влиять на соседние карточки; б) визуально должно быть частью карточки, то есть иметь с ней бесшовное соединение. Главная загвоздка в том, что карточка с тенью и не получается сделать бесшовную структуру.
Мне кажется, автору рановато смотреть в эту сторону.
Да, я только начал изучать Javascript, определённо рано.
Сергей Соколов, Владимир, у всех передаваемых объектов будет данный метод. Перехватывать ошибки пока не научился, да и код вряд ли будет использоваться другими разработчиками, поэтому передача "случайных" аргументов исключена. Тем не менее, возьму это на заметку.
Для большей совместимости я пишу код со старым синтаксисом, так что одной строкой не выйдет. Насчёт правильного именования переменных приму к сведению. А почему "дичь"? Код ведь работает, какой смысл в ещё одном цикле?
Да, но ведь можно сделать через переменную:
var handler = openInfoWindow(someWindow, someContent, someMarker);
google.maps.event.addListener(marker, 'click', handler);
google.maps.event.removeListener(marker, 'click', handler);
Владимир Проскурин, спасибо за ответ. Виталий, я обеими руками за за чистый и понятный код (хоть первый вариант вполне приемлемый с точки зрения читабельности), но тут вопрос больше о производительности.
А с точки зрения оптимизации? Есть ли какой-то профит от кеширования значения или он настолько мал, что на это не стоит обращать внимание? И что мешает разработчику занести элемент в переменную в будущих версиях, если к нему надо будет обращаться многократно?
Не могли бы вы помочь ещё? Fiddle. При первом взаимодействии с модальным окном (при открытии основного и вложенного) всё отрабатывает как надо. Но при повторном - вложенное мгновенно закрывается.
Как это пофиксить?