使用url从另一个页面加载div内的内容

时间:2014-07-02 20:24:06

标签: javascript php jquery html css

我目前在网页上有不同内容的Jquery标签,但这并没有帮助我明智,因为谷歌和其他地方不会拿起这些内容。

我正在寻找“标签”,但是当你点击链接时,它会加载那些信息。

这方面的一个例子就是http://www.gamespot.com/watch-dogs

点击“标签”说评论,然后加载该内容以及http://www.gamespot.com/watch-dogs/reviews/

的网址

我希望复制这样的东西,而不是使用Jquery标签。

你的帮助会很棒!

4 个答案:

答案 0 :(得分:1)

如果您希望搜索引擎选择内容,则必须使用原始HTML。他们不会运行更新客户端上的DOM的脚本。所以你需要在PHP中完成它:

<div>
<?php readfile("url"); ?>
</div>

但是,如果URL是一个完整的网页,这可能是一个坏主意。它将拥有自己的<html><head><body>标记,这些标记只能在页面上显示一次,而不会嵌入到其他页面中。

答案 1 :(得分:0)

尝试使用jQuery&#39; load函数:

$( "#element to put data in" ).load( "address", function() {
  alert( "Load was performed." );
  //what to do when done loading page
});

答案 2 :(得分:0)

<div id="myContent"></div>

加载方法:

$("#myContent").load("url to your content which you want to load", function(){
    // things which you want to do with.
});

答案 3 :(得分:0)

为了使两个搜索引擎(可能不会执行JQuery)和用户(可能喜欢动态元素)感到高兴,你可以做两个解决方案。您可能有一个链接,点击后转到一个全新的HTML页面。搜索引擎将按此链接查看完整的单独页面。然后,您可能在页面中(或在链接的点击事件中)有一个javascript,它会截取并覆盖原始链接的目标,而是执行类似JQuery的$()。load( )。要重用内容,您可以使目标页面能够使用和不使用包装器加载。

目标文件:

<?php if(!isset($_GET['skipWrapper'])) { include('header.php'); } ?>
Here's the content that matters!
<?php if(!isset($_GET['skipWrapper'])) { include('footer.php'); } ?>

源文件:

<?php if(!isset($_GET['skipWrapper'])) { include('header.php'); } ?>
Here's the orginal content!
<a href="TargeFile.php" onclick="asyncLoad('TargeFile.php'); return false;">
<?php if(!isset($_GET['skipWrapper'])) { include('footer.php'); } ?>

asyncLoad的定义:

function asyncLoad(url) { $('#targetElementId').load(url + '?skipWrapper=true'); }

但是,最好只使用传统链接而不是执行异步选项卡。当后退按钮不起作用或常见行为(如中间点击以在新浏览器选项卡中打开链接)不再有效时,用户会感到困惑。