问问题
614 次
2 回答
1
请试试这个,您可以在选择下拉列表时使用更改。如果您愿意,可以根据选定的下拉菜单更改图像。
var valueSelect = "Level 1";
var setImage = "https://pannellum.org/images/alma.jpg";
$('#select-level').on('change', function() {
valueSelect = this.value;
// change your image base on value dropdown
if(valueSelect == "Level 1")
{
setImage = "https://pannellum.org/images/alma.jpg";
}
else if(valueSelect == "Level 2")
{
setImage = "https://pannellum.org/images/jfk.jpg";
}
else if(valueSelect == "Level 3")
{
setImage = "https://pannellum.org/images/alma.jpg";
}
// and so on
// remove the pannellum
$('#panorama').html('');
// call the function
showPannellum(setImage, valueSelect);
});
// call the image for first time
showPannellum(setImage, valueSelect);
// function show pannellum
function showPannellum(image, value){
pannellum.viewer('panorama', {
"type": "equirectangular",
"panorama": image,
"autoLoad": true,
"autoRotate": -2,
"title": value
});
}
#panorama {
width: 600px;
height: 400px;
margin: 50px auto;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://cdn.pannellum.org/2.4/pannellum.css"/>
<script type="text/javascript" src="https://cdn.pannellum.org/2.2/pannellum.js"></script>
<div style="display:inline; color: red">Choose Location:</div>
<div style="align: right;display:inline;">
<select id="select-level">
<option value="Level 1">Level 1</option>
<option value="Level 2">Level 2</option>
<option value="Level 3">Level 3</option>
<option value="Level 4">Level 4</option>
</select>
</div>
<div id="panorama"></div>
于 2019-04-25T09:00:50.327 回答
0
您应该定义一个 JavaScript 函数并使用事件 onclick 附加选择标记,以便每当它的值发生更改时,都会调用该 JavaScript 函数并传递更改的值。
<script type="text/javascript">
function selectionChanged(value)
{
document.getElementById("panorama").innerHTML = '';
pannellum.viewer('panorama', {
"type": "equirectangular",
"panorama": value,
"autoLoad": true,
"autoRotate": -2,
"title": value
});
}
</script>
<div style="display:inline; color: red">Choose Location:</div>
<div style="align: right;display:inline;">
<select onchange="selectionChanged(this.value);">
<option value="https://pannellum.org/images/alma.jpg">Level 1</option>
<option value="https://pannellum.org/images/jfk.jpg">Level 2</option>
<option value="https://pannellum.org/images/alma.jpg">Level 3</option>
<option value="https://pannellum.org/images/alma.jpg">Level 4</option>
</select>
</div>
<div id="panorama"></div>
<script type="text/javascript">
pannellum.viewer('panorama', {
"type": "equirectangular",
"panorama": "https://pannellum.org/images/alma.jpg",
"autoLoad": true,
"autoRotate": -2,
"title": '',
});
</script>
并在调用函数时更新全景属性中的图像链接。
<link rel="stylesheet" href="https://cdn.pannellum.org/2.4/pannellum.css"/>
<script type="text/javascript" src="https://cdn.pannellum.org/2.2/pannellum.js"></script>
<script type="text/javascript">
function selectionChanged(value)
{
document.getElementById("panorama").innerHTML = '';
pannellum.viewer('panorama', {
"type": "equirectangular",
"panorama": value,
"autoLoad": true,
"autoRotate": -2,
"title": value
});
}
</script>
<div style="display:inline; color: red">Choose Location:</div>
<div style="align: right;display:inline;">
<select onchange="selectionChanged(this.value);">
<option value="https://pannellum.org/images/alma.jpg">Level 1</option>
<option value="https://pannellum.org/images/jfk.jpg">Level 2</option>
<option value="https://pannellum.org/images/alma.jpg">Level 3</option>
<option value="https://pannellum.org/images/alma.jpg">Level 4</option>
</select>
</div>
<div id="panorama"></div>
<script type="text/javascript">
pannellum.viewer('panorama', {
"type": "equirectangular",
"panorama": "https://pannellum.org/images/alma.jpg",
"autoLoad": true,
"autoRotate": -2,
"title": '',
});
</script>
于 2019-04-25T08:52:08.430 回答