0

场景:使用 ajax 驱动的分页列出的基于 Canvas 的投资组合项目。

问题:使用 ajax 加载下一页内容后,脚本标签不在画布标签内。

尝试:在画布标签之前添加脚本标签,这也没有加载(所以加载脚本肯定有问题)。

研究:jquery script not working,显然由于安全原因您无法检索脚本。

可能的替代方案:从画布标签外部添加画布内容,但困难在于传递动态创建的投资组合标题标签!

代码:

    <ul id="products-list">
        <?php
            $i = 0;
            while($the_list->have_posts()): $the_list->the_post(); //wordpress loops through posts
        ?>

        <li  class="product-item<?php echo $i;?>">
            <script>functionForMakingACanvasOverlayUsingThePostTitle("<?php echo get_the_title() ?>");</script>
            <canvas></canvas>
        </li>

        <?php $i++; ?>  

    <?php endwhile; ?>
    </ul>

每页显示 6 项,下一个按钮使用 ajax 调用接下来的 6 项

建议?谢谢。

4

1 回答 1

1

myYou 不能在不调用最讨厌的eval方法的情况下使用 AJAX 添加 javascript 代码。在你的情况下,你不需要。您的答案是在对象上调用外部 javascript,而不是直接调用 javascript。您给我们的代码非常稀疏,所以我在下面的想法纯粹是出于演示目的 - 您需要根据您的实际情况对其进行翻译:

<canvas><div id="mytitle"></div></canvas>
<script>
    function drawTitleOverlay(title){
        var titleoverlayhtml = buildTitleOverlayHTMLFromTitle(title);
        document.getElementById('mytitle').innerHTML = titleoverlayhtml;
    }

    function nextPage(){
        var data = getAJAXData();
        var title = getTitleFromData(data);
        drawTitleOverlay(title);
    }
</script>
于 2013-04-19T07:01:44.907 回答