Da lag ich ja richtig mit meiner Vermutung. Du kannst hier einfach an drop1 bzw. drop2 einen Event-Handler registrieren, der alle Klicks auf die verschachtelten a-Elemente abfängt. Und die Art der Reise bzw. den Ortsnamen kannst du direkt dem a-Element entnehmen (innerHTML bzw. innerText/textContent). Den Dateinamen würde ich ins href-Attribut schreiben (die URL sollte auch erreichbar sein).
<ul class="drop2">
<li><a href="bangkok.html">Bangkok</a></li>
<!-- usw. -->
</ul>
document.getElementById('drop2').onclick = function(event) {
event.preventDefault(); // [link:http://molily.de/js/event-handling-objekt.html#standardaktion@title=Standardaktion unterdrücken]
var target = event.target || event.srcElement; // [link:http://molily.de/js/event-handling-objekt.html#currenttarget-target@title=Zielelement]
if (target.nodeName !== 'A') return;
var city = target.innerHTML;
var url = target.href;
wohin(city, url);
};
(ungetestet)
Damit werden IDs unnötig und du musst nicht jedem Element einen einzelnen Event-Handler zuweisen. Genauer wird das Vorgehen wie gesagt unter Effiziente Ereignisverarbeitung mit Event Delegation beschrieben.
Grüße,
Mathias