Посмотрел повнимательней, ошибка в хроме возникает из-за несовпадения схемы в URI — hhtp: против data:. Так что да — только инкапсуляция первой инструкцией в первый же скрипт (если он есть) обработчика события error, как в предыдущем каменте.
Хром меня не перестаёт удивлять, превращаясь в нечто странное и косячное.
В данном случае у него явные проблемы с определением контекста выполнения скрипта, записанного в строке. Возможно, мы столкнулись с особым, своим контекстом выполнения eval. То есть строка при превращении в исполняемый код бросает исключение вовсе не в contentWindow, а в свой контекст.
Вот, что пришлось сделать jsfiddle.net/petroveg/NJK49/5
Просто первой инструкцией навесили в том контексте обработчик ошибки.
В эмуляции Chrome покажет ошибку — он, сука такая, возвращает 'normal' для правила line-height. Есть подозрение, что Opera, Yandex и Safari сделают то же самое.
Лучше заменить .prop('checked') => .is(':checked')
В общем-то выделение флажка или радиокнопки — больше состояние, чем наличие свойства. Да и в CSS считают так же.
ИМХО неудачное имя переменной, потому что $(val).val() поставит в тупик, если потребуется получать значение.
@iiil а какая разница? Я могу вызвать смену у маркера хоть откуда — маркеры хранятся (объект, массив), по некоему параметру (например, id) берём ссылку на маркер и для него меняем.