亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? feeditem.js

?? 現在很火的郵件客戶端軟件thunderbird的源碼
?? JS
?? 第 1 頁 / 共 2 頁
字號:
# -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-# ***** BEGIN LICENSE BLOCK *****# Version: MPL 1.1/GPL 2.0/LGPL 2.1## The contents of this file are subject to the Mozilla Public License Version# 1.1 (the "License"); you may not use this file except in compliance with# the License. You may obtain a copy of the License at# http://www.mozilla.org/MPL/## Software distributed under the License is distributed on an "AS IS" basis,# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License# for the specific language governing rights and limitations under the# License.## The Original Code is an RSS Feed Item## The Initial Developer of the Original Code is# The Mozilla Foundation.# Portions created by the Initial Developer are Copyright (C) 2004# the Initial Developer. All Rights Reserved.## Contributor(s):## Alternatively, the contents of this file may be used under the terms of# either the GNU General Public License Version 2 or later (the "GPL"), or# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),# in which case the provisions of the GPL or the LGPL are applicable instead# of those above. If you wish to allow use of your version of this file only# under the terms of either the GPL or the LGPL, and not to allow others to# use your version of this file under the terms of the MPL, indicate your# decision by deleting the provisions above and replace them with the notice# and other provisions required by the GPL or the LGPL. If you do not delete# the provisions above, a recipient may use your version of this file under# the terms of any one of the MPL, the GPL or the LGPL.## ***** END LICENSE BLOCK ***** */// Handy conversion values.const HOURS_TO_MINUTES = 60;const MINUTES_TO_SECONDS = 60;const SECONDS_TO_MILLISECONDS = 1000;const MINUTES_TO_MILLISECONDS = MINUTES_TO_SECONDS * SECONDS_TO_MILLISECONDS;const HOURS_TO_MILLISECONDS = HOURS_TO_MINUTES * MINUTES_TO_MILLISECONDS;const MSG_FLAG_NEW      = 0x10000;const ENCLOSURE_BOUNDARY_PREFIX = "--------------";  // 14 dashesconst ENCLOSURE_HEADER_BOUNDARY_PREFIX = "------------"; // 12 dashesconst MESSAGE_TEMPLATE = "\n\<html>\n\  <head>\n\    <title>%TITLE%</title>\n\    <base href=\"%BASE%\">\n\    <style type=\"text/css\">\n\      %STYLE%\n\    </style>\n\  </head>\n\  <body>\n\    %CONTENT_TEMPLATE%\n\  </body>\n\</html>\n\";const REMOTE_CONTENT_TEMPLATE = "\n\    <iframe id =\"_mailrssiframe\" src=\"%URL%\">\n\      %DESCRIPTION%\n\    </iframe>\n\";const REMOTE_STYLE = "\n\      body {\n\        margin: 0;\n\        border: none;\n\        padding: 0;\n\      }\n\      iframe {\n\        position: fixed;\n\        top: 0;\n\        left: 0;\n\        width: 100%;\n\        height: 100%;\n\        border: none;\n\      }\n\";// Unlike remote content, which is locked within a fixed position iframe,// local content goes is positioned according to the normal rules of flow.// The problem with this is that the message pane itself provides a scrollbar// if necessary, and that scrollbar appears next to the toolbar as well as// the content being scrolled.  The solution is to lock local content within// a fixed position div and set its overflow property to auto so that the div// itself provides the scrollbar.  Unfortunately we can't do that because of// Mozilla bug 97283, which makes it hard to scroll an auto overflow div.const LOCAL_CONTENT_TEMPLATE = "\n\      %CONTENT%\n\";// no local style overrides at this timeconst LOCAL_STYLE = "\n";function FeedItem() {  this.mDate = new Date().toString();  this.mUnicodeConverter = Components.classes["@mozilla.org/intl/scriptableunicodeconverter"]                          .createInstance(Components.interfaces.nsIScriptableUnicodeConverter);}FeedItem.prototype = {  isStoredWithId: false, // we currently only do this for IETF Atom. RSS2 with GUIDs should do this as well.  xmlContentBase: null, // only for IETF Atom  id: null,  feed: null,  description: null,  content: null,  enclosure: null,  // we currently only support one enclosure per feed item...  title: "(no subject)",  // TO DO: this needs to be localized  author: "anonymous",  mURL: null,  characterSet: "",  get url()  {    return this.mURL;  },  set url(aVal)  {    var uri = Components.classes["@mozilla.org/network/standard-url;1"].getService(Components.interfaces["nsIStandardURL"]);    uri.init(1, 80, aVal, null, null);    var uri = uri.QueryInterface(Components.interfaces.nsIURI);    this.mURL = uri.spec;  },  get date()  {    return this.mDate;  },  set date (aVal)  {    this.mDate = aVal;  },  get identity ()  {    return this.feed.name + ": " + this.title + " (" + this.id + ")"  },  get messageID()  {    var messageID = this.id || this.mURL || this.title;    // Escape occurrences of message ID meta characters <, >, and @.    messageID.replace(/</g, "%3C");    messageID.replace(/>/g, "%3E");    messageID.replace(/@/g, "%40");    messageID = messageID + "@" + "localhost.localdomain";    return messageID;  },  get itemUniqueURI()  {    var theURI;    if(this.isStoredWithId && this.id)      theURI = "urn:" + this.id;    else      theURI = this.mURL || ("urn:" + this.id);    return theURI;  },  get contentBase()  {    if(this.xmlContentBase)      return this.xmlContentBase    else      return this.mURL;  },  store: function()   {    this.mUnicodeConverter.charset = this.characterSet;    if (this.isStored())       debug(this.identity + " already stored; ignoring");    else if (this.content)     {      debug(this.identity + " has content; storing");      var content = MESSAGE_TEMPLATE;      content = content.replace(/%CONTENT_TEMPLATE%/, LOCAL_CONTENT_TEMPLATE);      content = content.replace(/%STYLE%/, LOCAL_STYLE);      content = content.replace(/%TITLE%/, this.title);      content = content.replace(/%BASE%/, this.contentBase);       content = content.replace(/%URL%/g, this.mURL);      content = content.replace(/%CONTENT%/, this.content);      this.content = content; // XXX store it elsewhere, f.e. this.page      this.writeToFolder();    }    else if (this.feed.quickMode)     {      debug(this.identity + " in quick mode; storing");      this.content = this.description || this.title;      var content = MESSAGE_TEMPLATE;      content = content.replace(/%CONTENT_TEMPLATE%/, LOCAL_CONTENT_TEMPLATE);      content = content.replace(/%STYLE%/, LOCAL_STYLE);      content = content.replace(/%BASE%/, this.contentBase);       content = content.replace(/%TITLE%/, this.title);      content = content.replace(/%URL%/g, this.mURL);      content = content.replace(/%CONTENT%/, this.content);      this.content = content; // XXX store it elsewhere, f.e. this.page      this.writeToFolder();    }     else     {      //debug(this.identity + " needs content; downloading");      debug(this.identity + " needs content; creating and storing");      var content = MESSAGE_TEMPLATE;      content = content.replace(/%CONTENT_TEMPLATE%/, REMOTE_CONTENT_TEMPLATE);      content = content.replace(/%STYLE%/, REMOTE_STYLE);      content = content.replace(/%TITLE%/, this.title);      content = content.replace(/%BASE%/, this.contentBase);       content = content.replace(/%URL%/g, this.mURL);      content = content.replace(/%DESCRIPTION%/, this.description || this.title);      this.content = content; // XXX store it elsewhere, f.e. this.page      this.writeToFolder();    }  },  isStored: function()  {    // Checks to see if the item has already been stored in its feed's message folder.    debug(this.identity + " checking to see if stored");    var server = this.feed.server;    var folder = this.feed.folder;    if (!folder)     {      debug(this.feed.name + " folder doesn't exist; creating");		  debug("creating " + this.feed.name + "as child of " + server.rootMsgFolder + "\n");      server.rootMsgFolder.createSubfolder(this.feed.name, null /* supposed to be a msg window */);      folder = server.rootMsgFolder.FindSubFolder(this.feed.name);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
777xxx欧美| 亚洲成人综合在线| 国产成人啪午夜精品网站男同| 色欧美片视频在线观看在线视频| 蜜桃视频一区二区三区| 精品99久久久久久| 成人高清免费观看| 一个色在线综合| 欧美变态tickling挠脚心| 国产麻豆欧美日韩一区| 一区二区三区.www| 91精品啪在线观看国产60岁| 国内不卡的二区三区中文字幕 | 风间由美一区二区三区在线观看 | 欧美精品一区二区精品网| 免费不卡在线视频| 亚洲一区二区综合| 精品精品欲导航| 91福利资源站| 国产99久久久精品| 日韩和的一区二区| 亚洲欧洲精品天堂一级| www日韩大片| 精品国产亚洲一区二区三区在线观看| 精品一区二区在线视频| 亚洲精品免费一二三区| 综合色中文字幕| 中文字幕va一区二区三区| 精品国产91洋老外米糕| 国产女人18毛片水真多成人如厕| 91丨九色丨蝌蚪丨老版| 97精品国产露脸对白| www.av亚洲| 99在线精品视频| 成人激情视频网站| 成人免费视频网站在线观看| 国产精品资源在线| 高清国产一区二区| www.亚洲精品| 欧美日韩小视频| 欧美日韩午夜精品| 欧美麻豆精品久久久久久| 欧美一区二区美女| 国产日韩欧美精品一区| 国产欧美一区二区精品忘忧草| 国产精品乱码一区二区三区软件 | 亚洲高清不卡在线| 日韩国产精品久久久| 国产一区亚洲一区| 91福利视频在线| 国产无人区一区二区三区| 国产精品色在线| 一区二区三区四区五区视频在线观看| 亚洲综合一区在线| 日韩影视精彩在线| 国产福利91精品一区二区三区| 成人aaaa免费全部观看| 国产欧美视频一区二区| 一区二区三区四区蜜桃| 日韩午夜激情av| 国产欧美中文在线| 午夜视频在线观看一区| 日本久久电影网| 亚洲天堂成人在线观看| 狠狠狠色丁香婷婷综合久久五月| 成人免费高清视频| 亚洲精品在线观看网站| 日韩电影免费在线看| 99久久免费视频.com| 久久精品视频在线免费观看| 免播放器亚洲一区| 制服丝袜亚洲精品中文字幕| 亚洲人成7777| 日本精品裸体写真集在线观看| 中文字幕一区二区5566日韩| 7777精品伊人久久久大香线蕉超级流畅 | 国产iv一区二区三区| 日韩三级精品电影久久久 | 日韩一区二区精品在线观看| 亚洲一区二区三区不卡国产欧美| 成人免费看视频| 中文字幕一区二区日韩精品绯色| 99精品视频一区| 亚洲狠狠爱一区二区三区| 欧美一区二区三区免费大片| 国内欧美视频一区二区| 国产精品色婷婷久久58| 91网站在线播放| 亚洲综合av网| 日韩三级在线观看| 99久久精品免费看国产免费软件| 综合自拍亚洲综合图不卡区| 欧美日韩国产免费| 精久久久久久久久久久| 国产精品的网站| 制服丝袜在线91| 不卡一区在线观看| 美女视频一区二区三区| 一区二区三区.www| 久久蜜桃香蕉精品一区二区三区| 精品成人免费观看| 波多野结衣的一区二区三区| 久久国产精品72免费观看| 亚洲va欧美va国产va天堂影院| 91精品久久久久久蜜臀| 99国产精品国产精品毛片| 国产麻豆一精品一av一免费| 亚洲伦理在线免费看| 久久蜜桃一区二区| 日韩欧美国产麻豆| 欧美福利视频一区| 欧美日韩精品免费| 欧美视频在线不卡| 欧美伊人久久大香线蕉综合69 | 日本欧美大码aⅴ在线播放| 亚洲成在线观看| 亚洲成人av资源| 日韩av一区二| 欧美影视一区二区三区| 国产精品国产精品国产专区不蜜| 91蜜桃在线免费视频| 国产在线播精品第三| 免费久久99精品国产| 婷婷开心激情综合| 亚洲图片欧美视频| 日韩经典一区二区| 久久精品国产网站| 极品少妇xxxx偷拍精品少妇| 麻豆精品新av中文字幕| 麻豆精品国产传媒mv男同| 久久99精品久久久久久动态图| 日韩精品一二三区| 久久99精品久久久久久国产越南| 久久se这里有精品| 欧美精品v日韩精品v韩国精品v| 欧美三级视频在线| 欧美一区日韩一区| 久久青草欧美一区二区三区| 国产欧美一区二区在线| 18成人在线视频| 亚洲成人动漫精品| 久久99精品久久久久久动态图 | 国产亚洲欧美日韩在线一区| 久久久亚洲精品一区二区三区| 中文字幕第一区| 一区二区不卡在线播放| 日本女人一区二区三区| 日本vs亚洲vs韩国一区三区二区| 激情图区综合网| 成人午夜电影网站| 色94色欧美sute亚洲线路二| 777午夜精品免费视频| 久久久久久久综合| 一卡二卡欧美日韩| 精东粉嫩av免费一区二区三区| 国产成人福利片| 在线精品视频免费播放| 精品美女在线播放| 中文字幕一区av| 蜜桃在线一区二区三区| 成人黄色小视频| 欧美日韩视频不卡| 国产欧美日韩另类视频免费观看| 亚洲一区二区三区四区在线免费观看| 精品在线一区二区三区| 91麻豆蜜桃一区二区三区| 日韩免费观看高清完整版| 亚洲色图在线播放| 蜜乳av一区二区| 久久久久成人黄色影片| 亚洲一卡二卡三卡四卡| 国产精品456| 欧美美女bb生活片| 中文字幕中文字幕一区| 久久99国产精品成人| 91黄色免费看| 久久九九久久九九| 日韩黄色免费网站| 欧美亚洲日本国产| 中文字幕成人av| 国产做a爰片久久毛片| 欧美精品乱码久久久久久| 亚洲女人的天堂| 成人激情文学综合网| 久久九九全国免费| 久久成人av少妇免费| 欧美美女激情18p| 夜夜夜精品看看| 91社区在线播放| 国产精品每日更新| 国产麻豆精品在线观看| 日韩欧美国产综合一区 | 日韩欧美一二区| 亚洲综合在线观看视频| 日韩精品一区二区三区四区视频| 亚洲一区二区高清| 日本高清无吗v一区| 自拍偷拍国产精品| 一本久久精品一区二区| 一区在线观看视频|