甚至可以用jQuery做这样的事情:
我的html文件几乎是空的index.php(没有内容,只有重要的标签),我也有文件content.php里面有所有的网页内容,比如这个:blablabla,很多标签,div和其他内容。例如,所有这些内容都是700px长。
现在我要做的就是用jQuery做这个:在文件index.php之间输入这个命令并在此之后添加一个jQuery的东西,将.content.heigth()放入任何变量(这样它将显示文件content.php中的所有内容有多长(在此示例中为700px))。
我已经尝试过做这些事情,一切顺利,直到我必须将变量放入文件内容长度的地方。
这是我的代码。可能有人可以解决它,但在我看来这都是错的。
所有jQuery命令都是用index.php文件编写的。
$(document).ready(function() {
$('body').append("<?php include ('content.php'); ?>");
$length = $('.content').length;
});
$ length显示0但它应该大于0 ^ _ ^
最重要的是要知道在index.php文件中使用jQuery或任何其他语言的帮助,content.php文件中的内容长度。使用.load('content.php')命令也可以包含文件,但是此命令看不到包含文件的内容长度。
感谢您的帮助! :)
答案 0 :(得分:2)
$('body').append("<?php include ('content.php'); ?>");
不要这样做!没有充分的理由去做,很可能你会遇到换行和/或未转义的引号问题。只需将<?php include ('content.php'); ?>
直接添加到正文的末尾,然后从document.ready中获取高度(您几乎就在那里):
$(document).ready(function() {
var height = $('.content').height();
alert(height) // or do something with it
});
您在问题中提到.load('content.php')
。如果我建议的直接php包含不适合您的需求,请执行以下操作:
$(document).ready(function() {
// You probably want a more specific container instead of body
$(body).load('content.php', function(){
// You can only read the height inside this callback
var height = $('.content').height();
alert(height) // or do something with it
// Continue your program flow from here
// (for example, call a function)
});
// CAUTION: here the content probably didn't load yet.
// If you need to refer to it, do it from the callback above.
});
最后:如果你真的得到0
$('.content').length
,那是因为在你调用它时,DOM中没有带有“content”类的元素。 jQuery对象的length
属性告诉您有多少元素与您使用的选择器匹配,因此零为无。
答案 1 :(得分:0)
感谢。问题是我必须警告高度为(正文).load代码不在该代码旁边。
正确:
$(document).ready(function() {
$('body').load('content.php', function(){
alert($('.content').height());
});
});
错:
$(document).ready(function() {
$('body').load(content.php', function(){})
alert($('.content').height());
});
答案 2 :(得分:-1)
根据我的理解,您想要内容的实际高度(以像素为单位)?在这种情况下,请采用Malcolm的建议并使用.height()而不是.length。
$(document).ready(function() {
$('body').append("<?php include ('content.php'); ?>");
$length = $('.content').length;
});
如果您想要查看块中有多少个字符,您可以执行以下操作。
$(document).ready(function() {
$('body').append("<?php include ('content.php'); ?>");
$length = $('.content').html().length;
});