javascript - 使用javascript动态加载内容的问题

标签 javascript jquery html loading dynamic

我正在开发一个在 DIV 中动态加载内容的网站。 一切正常,除非内容包含 jquery 插件(例如 twitterfeed),jquery 插件不起作用..有人知道如何让插件工作吗?

$(function() {

    var newHash      = "",
        $mainContent = $("#main-content"),
        $pageWrap    = $("#page-wrap"),
        baseHeight   = 0,
        $el;


    $("nav").delegate("a", "click", function() {
        window.location.hash = $(this).attr("href");
        return false;
    });

    $(window).bind('hashchange', function(){

        newHash = window.location.hash.substring(1);

        if (newHash) {
            $mainContent
                .find("#guts")
                .fadeOut(200, function() {
                    $mainContent.hide().load(newHash + " #guts", function() {
                        $mainContent.fadeIn(200, function() {
                            $pageWrap.animate({
                                height: baseHeight + $mainContent.height() + "px"
                            });
                        });
                        $("nav a").removeClass("current");
                        $("nav a[href="+newHash+"]").addClass("current");
                    });
                });


        };

    });

    $(window).trigger('hashchange');


});

最佳答案

如果您将 $.load 与选择器一起使用 ($(target).load("url #selector")),jQuery 会从响应中删除所有 SCRIPT 标记。

我想到的一些解决方案是:

  1. 更改后端以仅返回脚本所需的内容
  2. 执行 $.get 请求,将响应视为纯文本,执行字符串操作以仅提取您需要的部分,然后将结果转换为 DOM 节点。要做到这一点正确,需要一个 HTML 解析器。

关于javascript - 使用javascript动态加载内容的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5539830/

相关文章:

javascript - 使用 Ajax Jquery 打印对象属性时未定义的结果

javascript - JSDoc 注释 block 中是否允许使用制表符?

Jquery 验证 - 范围 0 到 100 无法正常工作

javascript - Accordion 是如何工作的?

javascript - jquery ajax表单提交

javascript - 如何获取附近div元素的input属性值和背景颜色?

javascript - 如何在主节点中设置私有(private)链接,使其无法被laravel中的子节点访问

javascript - 如何避免在wavesurfer js中创建多个区域

html - 固定高度内联 block div

html - 如何在 XPATH 中选择具有相同属性 ID 的第二个元素?