【问题标题】:jQuery .html() large loadjQuery .html() 大负载
【发布时间】:2012-05-01 19:56:30
【问题描述】:

我一直在测试 jQuery .html() 函数,发现它不适用于大量文本,请参阅example。但是,该代码没有错误,并且非常简化的 test case 可以完美运行。

我知道这可能不是将大量数据包含到 div 中的最佳方式,但我打算最终从各种数组中加载数据,并且代码旨在成为一种构造函数。

那么我的问题是:我做错了什么? jQuery 不能处理这么多的文本吗?如果是这样,使用 jQuery/JavaScript/JSON 加载同一 html 的多个实例(在某些部分具有不同的文本/url)的最佳方法是什么?我应该从数组中填充数据吗?

提前致谢,任何帮助将不胜感激。

根据答案进行编辑

您好,谢谢,我愚蠢地忽略了一个未定义的变量。这是一个新的working test case。我想要完成的是让多个博客帖子遵循相同的结构公式,一次由 jQuery 6 加载到一个页面中。将此数据存储在数组中的最佳方法是什么?然后从数组中填充这些元素的内容?

【问题讨论】:

  • 您为什么要尝试构建这样的页面内容?我认为您的代码问题可能突出了设计/实现问题。告诉我们您想要完成的工作,我认为我们可以提供更多帮助。
  • 感谢查看我编辑的问题

标签: javascript jquery html json load


【解决方案1】:

你提供的例子报错了:

Uncaught ReferenceError: posterurl is not defined

添加var posterurl = "";后,代码执行正常且高效。

这里是a working fiddle

注意:这是一种构建页面的可怕方式。

【讨论】:

  • 谢谢-我知道这很可怕,因此是问题的第二部分。如果每个包装器都有相同的一般结构,我怎样才能最好地在同一页面上构建多个包装器?
  • 如果您想以视觉方式查看我想要完成的工作,请访问 www.jackdent.co.uk/vintage
【解决方案2】:

查看您的扩展问题(感谢您抽出宝贵时间),我的直觉认为您最好在服务器端执行此操作。这意味着您发送的文档带有预先构建的内容,这对重要的访问者 - 谷歌有重大影响。否则,就 google-bots 而言,您的页面是空的并且可能隐藏内容,这是他们强烈反对的。服务器端构建的页面还意味着禁用 JavaScript 的访问者将获得相同的内容。动态加载内容很好,而且非常有用,但是用 JavaScript 从头开始​​构建这么多页面有点太过分了(在我看来)。

【讨论】:

  • 我完全同意 - 2 个问题:1. 我对 PHP 或任何其他服务器端脚本没有信心......但是 :) 2. 我已经基本上可以使用 jQuery,我知道从数组中实现并不是太难实现...
  • PHP 完全值得学习。此外,如果您没有一些服务器端技术,您将在哪里获取要放入阵列的内容?如果您手动输入它,那么制作静态 HTML 比构建一个使用 JavaScript 自行构建的静态页面要好 100%。这是一个没有任何好处的复杂性和维护负担。
  • 我承认失败...我只是想要一种简单的方法让用户在页面中输入数据,这样如果他们没有经验,他们就不必浏览 HTML。对于这样的事情,wordpress 集成有多简单?
  • 将其视为一场胜利——您将构建一个更好的解决方案!相信我,对于 JS 的基本用户来说,使用 HTML 工作会更好。 Wordpress 非常适合集成,除了基本的 WP 网站之外,您还可以用它做很多事情。开发人员以这样一种方式构建它,你可以用它做很多事情。您还将在途中学到很多关于 PHP 的知识——另一个胜利 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-10-08
  • 2015-05-07
  • 2014-04-10
  • 2012-08-27
相关资源
最近更新 更多