Уже много раз наступали на эти грабли в первом АПИ.
Давайте НЕ будем создавать локальные переменные внутри функции инициализации так:
ymaps.ready(init);function init () {var myMap = new ymaps.Map(...),myPlacemark = new ymaps.Placemark(...
А будем делать это так:
var myMap, myPlacemark;
ymaps.ready(init);
function init () {
myMap = new ymaps.Map(...
myPlacemark = new ymaps.Placemark(...
Во-первых это не удобно с точки зрения изучения этих объектов, т.к. нельзя получить к ним доступ из консоли.
Во-вторых не хочется постоянно отвечать на одни и те же вопросы новичков, почему не работает это:
<input type="Button" value="Открыть Балун" onclick="myPlacemark.balloon.open();"/>