2009-01-04 25 views
2

我有一个博客网站托管在Windows Sever,ASP.Net 3.5,ASP.Net AJAX,SQL Server在后台。如何为我的网站制作像“Digg它”这样的按钮?

我想给博客像“Digg的,这是一个按钮,他们可以把自己的博客,如果他们喜欢它的读者点击拇指向上的职位。

我知道我将使用Javascript功能来做到这一点。我能做些什么: -

  1. 从我的网站检索代码,它将显示当前的赞成计数。
  2. 如果用户赞许的东西增加我的网站计数。

由于大多数这些博客都在blogger.com/wordpress.com上,所以插件代码将嵌入到博客主题中。我想我会使用博客文章的URL作为唯一的ID。我的问题是如何获取我的网站和blogger.com上的javascript。

您的帮助将不胜感激。

感谢

回答

4

你可以考虑使用脚本加载的回调,而不是使用XMLHttpRequest来绕过跨域问题JSON数据。

function dynScript(url){ 
    var script=document.createElement('script'); 
    script.src=url; 
    script.type="text/javascript"; 
    document.getElementsByTagName('head')[0].appendChild(script); 
} 
function handleYourData(json) { 
    // Do something with your response data if you need to, like alter 
    // dom. 
} 
function thumbUp(postId) { 
    dynScript('http://yourdomain.com/path/to/thumbHandler?callback=handleYourData&thumbs=up&postId=' + postId); 
} 
function thumbDown(postId) { 
    dynScript('http://yourdomain.com/path/to/thumbHandler?callback=handleYourData&thumbs=down&postId=' + postId); 
} 

你可以在你的HTML中使用它。

<a onClick="thumbUp(521);">Thumb up</a> | <a onClick="thumbDown(521);">Thumb Down</a> 

thumbHandler代码必须输出与JSON handleYourData()缠着让你的回调将与JSON数据作为参数调用。

+0

伪码,实际上没有测试,但希望它会给你一个开始的好地方! – 2009-01-04 11:06:56

0

好吧,我得到了一个答案,而我尝试那种方法我发现了一些更容易。

我所要使用的iframe中。 iframe就像浏览器中的浏览器窗口。我在iframe中呈现的代码将在内部访问我的网站,就好像它是一个普通的网页请求一样。所以我可以使用我的网络服务,我的背景ASP.Net代码,以及我想要的一切,而不用担心搞乱主机网站。

当我做开发,我将在这里发布一些代码。同时,如果你们知道这种方法的任何缺陷,请告诉我。

下面是我写的

<script type="text/javascript"> 
    window.onload = function() { 
     alert("http://mysite.com?url=" + window.location.href); 
     document.all.blogvaniframe.src = "http://blogvani.com"; 
    } 
</script> 
<iframe id="blogvaniframe" height="100" width="100" scrolling="no" frameborder="0"> 

</iframe> 

我使用JavaScript来加载在iframe的内容,因为我想传递一个参数的URL的查询字符串一些样品的iframe代码(没有测试尚未虽然。 。

感谢

+0

如果你不介意我问,你不喜欢答案?它应该为您提供灵活性来做几乎任何您想做的事情,但也许我误解了原始问题。 – 2009-01-05 18:29:53

相关问题