仅在点击期间加载外部脚本源

时间:2016-05-30 16:05:06

标签: javascript php jquery html

  

下面的代码总是在页面加载时加载脚本src。

我的网站点击位于右侧(作为菜单项),然后它会在右侧(内容)加载页面,但仅限1页。

如何在onclick期间加载外部脚本src?

<html>

<head>
<script src="https://xdomain.com/xout.js"></script>
</head>


<body>
<a href="#xrefer"> <img id="idxclick" src="images/ximage.jpg" /></a>

<script>  
var handler = xout.xsetup({
    key: 'sd_FlP9fKY7TvINq4bWachJQ35P',
    image: '/images/xout.png',
    locale: 'auto',
    token: function(token) {
    //
    //
    }
});

$('#idxclick').on('click', function(e) {  
    handler.open({
    name: 'Hardware',
    description: 'Software',
    amount: '50.00'
    });
    e.preventDefault();
});

$(window).on('popstate', function() {
    handler.close();
});
</script>

</body>
</html>

我做了你的代码&gt;这里&gt;但同样的事情发生&gt;

<html>

<head>
<!-- script src="https://xdomain.com/xout.js"></script> REMOVED -->
</head>


<body>
<a href="#xrefer"> <img id="idxclick" src="images/ximage.jpg" /></a>

<script>  
$.getScript('https://xdomain.com/xout.js', function () {
// do some stuff after script is loaded

var handler = xout.xsetup({
    key: 'sd_FlP9fKY7TvINq4bWachJQ35P',
    image: '/images/xout.png',
    locale: 'auto',
    token: function(token) {
    //
    //
    }
});

$('#idxclick').on('click', function(e) {  
    handler.open({
    name: 'Hardware',
    description: 'Software',
    amount: '50.00'
    });
    e.preventDefault();
});

$(window).on('popstate', function() {
    handler.close();
});

});  
</script>

</body>
</html>

  

您的回答是正确的!谢谢!,这更好更快!防止双击包括。

    <html>

<head>
</head>


<body>
<a href="#xrefer"> <img id="idxclick" src="images/ximage.jpg" onmouseover="$.getScript('https://xdomain.com/xout.js')" /></a>

<script>  
    $('#idxclick').on('mouseout', function() {x=0})
    var x=0;
    $('#idxclick').on('click', function(e) { 
    if (x==0) {
    x=1;
var handler = xout.xsetup({
    key: 'sd_FlP9fKY7TvINq4bWachJQ35P',
    image: '/images/xout.png',
    locale: 'auto',
    token: function(token) {
    //
    //
    }
});


    handler.open({
    name: 'Hardware',
    description: 'Software',
    amount: '50.00'
    });
    }
    e.preventDefault();
});

$(window).on('popstate', function() {
    handler.close();
});
</script>

</body>
</html>

1 个答案:

答案 0 :(得分:0)

您可以在点击事件处理程序中动态加载$.getScript()的脚本。

$('#idxclick').on('click', function(e) {
    $.getScript('https://xdomain.com/xout.js', function () {
        var handler = xout.xsetup({
                key: 'sd_FlP9fKY7TvINq4bWachJQ35P',
                image: '/images/xout.png',
                locale: 'auto',
                token: function(token) {
                    //
                    //
                };
        handler.open({
            name: 'Hardware',
            description: 'Software',
            amount: '50.00'
        });
    });
    e.preventDefault();
});