Не имея опыта работы с javascript, я смог открыть карту Google, используя приведенный здесь пример http://clarkupdike.blogspot.com/2009/03/basic-example-of-jquerys-uidialog.html. Чтобы использовать тот же скрипт для другой карты на той же странице, я изменил некоторые параметры на втором скрипте, чтобы отличить его от первого.Конфликтные сценарии диалога jQuery
Вот код для первого сценария ...
<a href="" onclick="return showDialog()">Get first map!</a>
<div id="dialog_a" title="First Map">
<iframe id="iframe_a" width="100%" height="100%"
marginWidth="0" marginHeight="0" frameBorder="0" scrolling="auto"
title="Dialog Title"></iframe>
</div>
<script type="text/javascript">
function showDialog(){
$("#dialog_a").dialog("open");
$("#iframe_a").attr("src","https://www.google.com/maps/embed/v1/place?q=409%20Bullard%20Avenue%2C%20Clovis%2C%20CA%2C%20United%20States&key=AIzaSyBNO4HD3H0XP_DnX_V8AHPrtpUPK5WrDgc");
return false;
}
$(document).ready(function() {
$("#dialog_a").dialog({
autoOpen: false,
modal: true,
height: 500,
width: 500
});
});
</script>
Вот второй сценарий ...
<a href="" onclick="return showDialog()">Get second map!</a>
<div id="dialog_b" title="Second Map">
<iframe id="iframe_b" width="100%" height="100%"
marginWidth="0" marginHeight="0" frameBorder="0" scrolling="auto"
title="Dialog Title"></iframe>
</div>
<script type="text/javascript">
function showDialog(){
$("#dialog_b").dialog("open");
$("#iframe_b").attr("src","https://www.google.com/maps/embed/v1/place?q=401%20Clovis%20Avenue%2C%20Clovis%2C%20CA%2C%20United%20States&key=AIzaSyBNO4HD3H0XP_DnX_V8AHPrtpUPK5WrDgc");
return false;
}
$(document).ready(function() {
$("#dialog_b").dialog({
autoOpen: false,
modal: true,
height: 500,
width: 500
});
});
</script>
Второй выполнения кода, а не первый. Я понимаю, почему это происходит, но я не смог выяснить (или найти аналогичный пример переполнения стека), как отличить один сценарий от другого, чтобы избежать этого конфликта.
Я предполагаю, что я должен либо сделать функцию, либо showDialog() уникальной для каждого скрипта, но я не смог понять, как это сделать.
Вот онлайн пример ...
http://johncrockford.com/test/
И почему именно происходит, в соответствии с вашим пониманием? – Inox
Я считаю, что это происходит потому, что второй скрипт является последним на странице, и это тот, который выполняется. –