javascript读取新的rss条目并创建通知
javascript to read new rss entry and create a notification
我想创建一个javascript来检查新的rss提要是否已经使用电话间隙通知更新并显示通知方法。http://docs.phonegap.com/phonegap_notification_notification.md.html#Notification
var oldEntry="";
document.addEventListener("deviceready", onDeviceReady, false);
// PhoneGap is ready
//
function onDeviceReady() {
// Empty
}
// Show a custom alert
//
function sendRequest(){
getRss("http://rss.cnn.com/rss/cnn_latest.rss.xml");
setTimeout('showAlert(newEntry.title)',4000);
}
function showAlert(data) {
var st = randomString();
if(oldEntry==""){
oldEntry = data;
navigator.notification.alert(
data, // message
'New Rss Entry', // title
'New Rss Entry'
);
}
else {
if(oldEntry!=data){
navigator.notification.alert(
data, // message
'New Rss Entry', // title
'New Rss Entry'
);
oldEntry = data;
}
}
setTimeout('sendRequest()',8000);
}
function randomString() {
var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
var string_length = 8;
var randomstring = '';
for (var i=0; i<string_length; i++) {
var rnum = Math.floor(Math.random() * chars.length);
randomstring += chars.substring(rnum,rnum+1);
}
return randomstring;
}
sendRequest();
现在,新的和旧的Rss标题都会弹出作为通知,是否可以限制该功能仅显示最新的Rss名称?
即使在8000毫秒后我取消了这两个通知,它们也会再次出现,但我想检查是否有新的通知,并只显示它们,而不是用户取消的通知。
这是为了获取新条目。
var newEntry="";
function getRss(url){
if(url == null) return false;
// Create Google Feed API address
var api = "http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&callback=?&q="
+ encodeURIComponent(url);
api += "&output=json_xml"
// Send request
$.getJSON(api, function(data){
// Check for error
if (data.responseStatus == 200) {
// Process the feeds
_process(data.responseData);
}
else {
};
});
}
var _process = function(data) {
// Get JSON feed data
var feeds = data.feed;
if (!feeds) {
return false;
}
// Get XML data for media (parseXML not used as requires 1.5+)
var xml = getXMLDocument(data.xmlString);
var xmlEntries = xml.getElementsByTagName('item');
var entry = feeds.entries[0];
newEntry = entry;
};
可能存在许多问题。我想你可能遇到了缓存错误。所以试着添加这个-
api++"&tempVar="+Math.random((
就在你的代码后面-
api+="&output=json.xml">
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 为effect Composer创建GodRays效果过程
- 从javascript创建一个列表
- onkeyup无法动态创建多个文本区域
- 如何创建应用程序独立通知服务器
- 使用AngularFire创建用户并调用工厂以显示通知
- Chrome扩展通知并非总是创建的-重复使用
- 正在为我的应用程序创建FB通知
- facebook是如何在其网络应用程序关闭时创建推送通知的
- 使用Dojo 1.9创建通知图标
- 如何创建在全屏应用程序上显示的Javascript/Chrome通知
- 如果我有一个rails后端和运行在Angular.js上的客户端,如何创建一个实时通知系统
- 我如何创建chrome.通知实时
- 你是否需要使用Urban Airship来使用PhoneGap创建推送通知?
- Chrome扩展:创建一个新的标签后,点击通知
- 如何设置浏览器创建的桌面通知的关闭超时时间?
- javascript读取新的rss条目并创建通知
- 使用canvas创建桌面通知图像,只有一个图像可以从后台页面工作
- QuickBlox :从 Android 客户端创建新的私人聊天时通知 Web 客户端 (JavaScript SDK)
- 如何创建'通知'在Android手机上打开网页时播放声音