javascript - 尝试使用 AR.JS 显示 jpeg 图像,并且仅在单击按钮时显示

标签 javascript html jpeg augmented-reality ar.js

我正在从事一个电子商务项目,我想在其中使用 AR.JS 显示图像。图像是普通的二维 jpeg。我只想能够显示在我的背景上。我已经构建了一个模态并在其中包含了 A 型框架。图像旋转显示,而不是在主图像的顶部。

其次,代码会自动呈现在整个页面上,而不仅仅是模式。有没有一种方法只有在模态出现时才渲染它,然后用模态关闭它。

非常感谢您的帮助。

打开模式

<!-- Modal or popup -->

 <div id="myModal" class="modal">


  <!-- Modal content -->
  <div class="modal-content">
    <span  id="myModalclose" class="close">&times;</span>


   </div>


 <a-scene embedded arjs>
    <a-assets>
        <img id="transpImage" src="${productFullImage}" alt="<c:out value="${fullImageAltDescription}" escapeXml="${env_escapeXmlFlag}"/>" title="<c:out value="${fullImageAltDescription}" escapeXml="${env_escapeXmlFlag}"/>" class="product_main_image"/>
    </a-assets>
    <a-image  rotation="0 0 0" src="#transpImage"></a-image>
    <a-marker-camera preset='hiro'></a-marker-camera>
</a-scene>



        <style>

                /* The Modal (background) */
                .modal {
                    display: none; /* Hidden by default */
                    position: fixed; /* Stay in place */
                    z-index: 1; /* Sit on top */
                    padding-top: 100px; /* Location of the box */
                    left: 0;
                    top: 0;
                    width: 100%; /* Full width */
                    height: 100%; /* Full height */
                    overflow: auto; /* Enable scroll if needed */
                    background-color: rgb(0,0,0); /* Fallback color */
                    background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
                }

                /* Modal Content */
                .modal-content {
                    background-color: #fefefe;
                    margin: auto;
                    padding: 20px;
                    border: 1px solid #888;
                    width: 80%;
                }

                /* The Close Button */
                .close {
                    color: #aaaaaa;
                    float: right;
                    font-size: 28px;
                    font-weight: bold;
                }

                .close:hover,
                .close:focus {
                    color: #000;
                    text-decoration: none;
                    cursor: pointer;
                }
       </style>
 </div>
  <script>

        // Get the modal
        var modal = document.getElementById('myModal');

        // Get the button that opens the modal
        var btn = document.getElementById("myBtn");

        // Get the <span> element that closes the modal
        //var span = document.getElementsByClassName("close1")[0];
        var span = document.getElementById("myModalclose");

        // When the user clicks on the button, open the modal 
        btn.onclick = function() {
            modal.style.display = "block";
        }

        // When the user clicks on <span> (x), close the modal
        span.onclick = function() {
            modal.style.display = "none";
        }

        // When the user clicks anywhere outside of the modal, close it
        window.onclick = function(event) {
            if (event.target == modal) {
                modal.style.display = "none";
            }
        }


  </script>

最佳答案

下面的代码运行良好

<head>
<script src="https://aframe.io/releases/0.6.0/aframe.min.js"></script>
<script src="https://jeromeetienne.github.io/AR.js/aframe/build/aframe-ar.js"></script>
</head>

<body style='margin : 0px; overflow: hidden;'>
<a-scene embedded="" arjs="trackingMethod: best;" class="" inspector="" keyboard-shortcuts="" screenshot="" vr-mode-ui=""> 
  <a-marker preset="hiro" id="aframe-scene" position="" rotation="" scale="" visible="" material="" arjs-anchor="" arjs-hit-testing="">    
    <a-image id="test" src="yourimage.png" position="0 0 0" rotation="-90 0 0" width="" height="" opacity="1" transparent="true" alpha-test="0.2" shader="standard" scale="1 1 1" visible="" material="" geometry=""></a-image>
</a-marker>
</a-scene>
</body>

关于javascript - 尝试使用 AR.JS 显示 jpeg 图像,并且仅在单击按钮时显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51941580/

相关文章:

php - 可隐藏评论框

javascript - 如何使用 jquery/javascript 更改/编辑标签的值?

javascript - 确定回调是否正在使用所有参数

html - 背景颜色不显示?

python - 如何在不写/读的情况下在 Python 中执行 JPEG 压缩

javascript - 我的 webpack 捆绑脚本中未定义的 Node 模块

javascript - 如何裁剪图像以使其适合屏幕的 50%?

C# HTML 敏捷包,从 div 中提取纯文本

.net - 使用 .NET 创建带 JPEG 压缩的多页 TIFF

java - 无法从 JPEG 元数据中检索标题的全文