Browse Tag: ajax

WordPress 博客非插件代码实现AJAX评论效果

AJAX效果即是提供评论的时候使用页面局部刷新的效果而不是整个页面刷新,实现这个效果虽然可以直接使用WordPress博客插件,但是很多WordPress博主是代码流,对于博客插件能少用则少用,能不用那就更好,所以博客吧介绍下非插件实现WordPress博客评论AJAX效果。

非插件AJAX效果方法:

下载文件comments-ajax.js和文件comments-ajax.php,博客吧提供打包下载comments_ajax,把这两个文件上传至主题的根目录
登陆自己的Wordpress博客后台,点击“外观”选项卡下的编辑选项进入主题编辑页面
选择编辑header.php文件,找到代码

  1. < ?php if (is_singular()) wp_enqueue_script(‘comment-reply’); ?>

把上面的代码替换为以下代码

  1. <?php if (is_singular()){ ?>
  2. <script type=“text/javascript” src=“http://ajax.googleapis.com/ajax/libs/jquery/1.2.3/jquery.min.js”></script>
  3. <script type=“text/javascript” src=“<?php bloginfo(‘template_directory’); ?>/comments-ajax.js”></script>
  4. <?php } ?>

更新文件,这样就完成了不用插件实现wordpress博客评论的AJAX效果了
提示:部分主题的header.php文件没有该行代码,那就找到

<?php wp_head(); ?>
在该代码前面(上面)添加上面的代码即可。
提醒:AJAX功能实现代码和文件非博客吧原创,原出处不详,但该文章是博客吧原创。

ajax异步传输post方法实例

与 POST 相比,GET 更简单也更快,并且在大部分情况下都能用。

然而,在以下情况中,请使用 POST 请求:

  • 无法使用缓存文件(更新服务器上的文件或数据库)
  • 向服务器发送大量数据(POST 没有数据量限制)
  • 发送包含未知字符的用户输入时,POST 比 GET 更稳定也更可靠

ajax异步传输post方法实例,

[code lang=”javascript”]

<html>
<head>
<script type="text/javascript">
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("POST","post.php",true);
/*如果需要像 HTML 表单那样 POST 数据,请使用 setRequestHeader() 来添加 HTTP 头。然后在 send() 方法中规定您希望发送的数据:*/
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send("fname=Bill&lname=Gates");
}
</script>
</head>
<body>

<h2>AJAX</h2>
<button type="button" onclick="loadXMLDoc()">请求数据</button>
<div id="myDiv"></div>

</body>
</html>

[/code]

post.php只需要接受变量即可。post.php中的代码

[code lang=”php”]</pre>
<?php

echo $_POST[‘fname’];
echo $_POST[‘lname’];

?>
<pre>
[/code]

ajax异步传输get方法实例

AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术,AJAX = 异步 JavaScript 和 XML。AJAX 是一种用于创建快速动态网页的技术。

通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面。

有很多使用 AJAX 的应用程序案例:新浪微博、Google 地图、开心网等等。下面是一个ajax异步传输get方法实例,

[code lang=”javascript”]

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ajax异步传输get方法演示</title>
<script>
function loadxmlhttp()
{
/*</pre>
创建 XMLHttpRequest 对象
所有现代浏览器(IE7+、Firefox、Chrome、Safari 以及 Opera)均内建 XMLHttpRequest 对象。
<pre>*/
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
/*</pre>
向服务器发送请求
如需将请求发送到服务器,我们使用 XMLHttpRequest 对象的 open() 和 send() 方法:
<pre>*/
/*下面的xmlhttp.open规定请求的类型、URL 以及是否异步处理请求。
method:请求的类型;GET 或 POST
url:文件在服务器上的位置
async:true(异步)或 false(同步)*/
xmlhttp.open("GET","test.txt",true);

/*下面是将请求发送到服务器。
string:仅用于 POST 请求*/
xmlhttp.send();

/*将得到的数据传输到div内部的html中*/
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}

</script>
</head>

&nbsp;

<body>
/*div 部分用于显示来自服务器的信息。当按钮被点击时,它负责调用名为loadxmlhttp()的函数:*/
<div id="myDiv"><h2>Let AJAX change this text</h2></div>
<button type="button" onclick="loadxmlhttp()">通过 AJAX 改变内容</button>

</body>
</html>

[/code]