javascript - 脚本仅在刷新后才有效

标签 javascript html jquery-mobile

在第一页中,我有一个带有链接的图像,您可以单击它:

<div style="width: 97px; height: 130px;">
<a href="objects_lost.html?obj=images/dog.png">
<div>
<img src="images/dog.png" alt="" style="width: 100%; height: 100%;">
<p style="color: black; margin-top: 0px;">DOG</p>
</div>
</a>
</div>

当您单击它时,会打开一个新页面,其中显示您单击的图像。但它仅在刷新一次后才有效。

    <img src="" id="image"/>        
    <script type="text/javascript">
        function whatImg() {
            var str = getUrlVars()["obj"];
            document.getElementById('image').src = str;
        }

        function getUrlVars() {
            var vars = [], hash;
            var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
            for(var i = 0; i < hashes.length; i++)
                {
                hash = hashes[i].split('=');
                vars.push(hash[0]);
                vars[hash[0]] = hash[1];
                }
            return vars;
            }
        whatImg();
    </script> 

有什么帮助吗? 我使用 JQuery Mobile

最佳答案

如果哈希发生更改,脚本将不会再次触发。您需要添加一个事件监听器,例如:

$(window).on("hashchange",function() {
  whatImg();
});

关于javascript - 脚本仅在刷新后才有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15031193/

相关文章:

javascript - 控制 DOM 中每个 'src' 属性的变化

javascript - 重定向到另一个网页

php - 如何组合两个文本超链接

javascript - Jquery Mobile "tap"事件错误

jquery-mobile - 我可以调换 Mobiscroll 上取消/设置按钮的位置吗?

javascript - 首先显示工具提示并突出显示区域?

javascript - 用于平滑立方体尺寸增加的循环

javascript - 通过 JavaScript/网络应用程序在设备上引导 OneDrive

html - 排除 &lt;!DOCTYPE> 的影响?

javascript - 为什么我的 jQuery Mobile 页脚会在用户单击背景时出现然后消失?