Javascript 运行功能不工作的下拉菜单
我正在尝试制作商店定位器,但下拉菜单出现问题,我想要一个下拉菜单来显示从用户到商店的距离,例如1英里3英里10英里等等,但是我无法获得一个下拉菜单来运行一个显示这些位置的功能,我已经尝试了几个例子,例如我在这里看到的 但是我的代码无法运行我尝试运行的代码是:Javascript 运行功能不工作的下拉菜单,javascript,drop-down-menu,Javascript,Drop Down Menu,我正在尝试制作商店定位器,但下拉菜单出现问题,我想要一个下拉菜单来显示从用户到商店的距离,例如1英里3英里10英里等等,但是我无法获得一个下拉菜单来运行一个显示这些位置的功能,我已经尝试了几个例子,例如我在这里看到的 但是我的代码无法运行我尝试运行的代码是: function list() { document.getElementById("myList").onchange = function() { var sheet=document.getElementById("my
function list() {
document.getElementById("myList").onchange = function() {
var sheet=document.getElementById("myList").value;
if(sheet == "one"){
showPosition();
}
else if(sheet == "two"){
showPosition2();
}
else if(sheet = "three"){
}
else{
}
return false
};
}
window.onload = list;
当我选择菜单中的第一个选项时,我希望它运行的功能是:
function showPosition(position) {
var locations = [
['store1', -2.063150, 52.516503, 4],
['store2', -2.064824, 52.518436, 5],
['store3', -2.068214, 52.519898, 3],
['store4', -2.068558, 52.512769, 2],
['store5', -2.070875, 52.510758, 1]
];
var lon1 = position.coords.longitude* 0.0174532925;
var lat1 = position.coords.latitude * 0.0174532925;
var i = 0;
while (i < locations.length)
{
x.innerHTML+= "<br>Distance " + calcDist(lon1, lat1, locations[i][1]*0.0174532925, locations[i][2]* 0.0174532925);
i++;
}
}
function calcDist(lon1, lat1, lon2, lat2)
{
return Math.acos(Math.sin(lat1)*Math.sin(lat2) +
Math.cos(lat1)*Math.cos(lat2) *
Math.cos(lon2-lon1)) * 3958;
}
功能显示位置(位置){
变量位置=[
[store1',-2.063150,52.516503,4],
[store2',-2.06482452.518436,5],
[store3',-2.068214,52.519898,3],
[store4',-2.068558,52.512769,2],
[store5',-2.070875,52.510758,1]
];
var lon1=位置坐标经度*0.0174532925;
var lat1=位置坐标纬度*0.0174532925;
var i=0;
而(i距离”+计算列表(lon1,lat1,位置[i][1]*0.0174532925,位置[i][2]*0.0174532925);
i++;
}
}
功能计算列表(lon1、lat1、lon2、lat2)
{
返回Math.acos(Math.sin(lat1)*Math.sin(lat2)+
数学cos(lat1)*数学cos(lat2)*
数学cos(lon2-lon1))*3958;
}
我使用的菜单是:
<ul id="dropdown">
<li> Choose theme
<ul>
<li id="stylesheet1" > <a href="#"> Default </a></li>
<li id="stylesheet2" > <a href="#"> Theme 1 </a></li>
<li id="stylesheet3" > <a href="#"> Theme 2 </a></li>
<li id="stylesheet4" > <a href="#"> Theme 3 </a></li>
</ul>
</li>
</ul>
- 选择主题
通过查看代码,我看到了一个主要错误
更改window.onload=list代码>到window.onload=list()代码>
-显示参数的传递
var testPosition = {
coords: {
longitude: 1,
latitude: 1
}
}
showPosition(testPosition);
下拉菜单在哪里?您只有无序列表。此外,您还有id=下拉列表,并且您正在搜索MyListError部分代码抱歉,这应该是:选择主题默认主题1主题2主题3参数的含义是什么???showPosition(position)
,position
是必需的,在您的代码中,您只执行showPosition()
我以前试过,如果你看一下,我会得到同样的结果,我想你可能会看到我在做什么,因为我有一个按钮,目前可以实现功能,但我的规范是下拉菜单yee我试过小提琴链接,但我无法安静地了解它的工作原理,我的例子会告诉你,当你按下按钮时,它会根据我的位置为你提供4家商店的距离。我想做的就是从按钮中获取功能,并将其用作下拉菜单上的第一个选项。我对这一点有了更好的理解,但现在我想将其链接到我的原始位置,而不是您创建的var测试位置我想显示我在var位置创建的5