function.js 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454
  1. String.prototype.trim = function ()
  2. {
  3. var str = this,
  4. str = str.replace(/^\s+/,'');
  5. for (var i = str.length - 1; i >= 0; i--)
  6. {
  7. if (/\S/.test(str.charAt(i)))
  8. {
  9. str = str.substring(0,i + 1);
  10. break;
  11. }
  12. }
  13. return str;
  14. }
  15. Array.prototype.Contain = function (item)
  16. {
  17. var array = this;
  18. for (var i = array.length - 1; i >= 0; i--)
  19. {
  20. if (array[i] == item)
  21. return true;
  22. }
  23. return false;
  24. }
  25. var _browser = (function (a)
  26. {
  27. var r = /(webkit)[ \/]([\w.]+)/,
  28. s = /(opera)(?:.*version)?[ \/]([\w.]+)/,
  29. t = /(msie) ([\w.]+)/,
  30. u = /(mozilla)(?:.*? rv:([\w.]+))?/;
  31. var b = r.exec(a) || s.exec(a) || t.exec(a) || a.indexOf("compatible") < 0 && u.exec(a) || [];
  32. return {
  33. name: b[1] || "",
  34. version: b[2] || "0"
  35. };
  36. })(window.navigator.userAgent.toLowerCase());
  37. /*取cookies*/
  38. var getCookie = function (c_name)
  39. {
  40. if (document.cookie.length > 0)
  41. {
  42. c_start = document.cookie.indexOf(c_name + "=");
  43. if (c_start != -1)
  44. {
  45. c_start = c_start + c_name.length + 1;
  46. c_end = document.cookie.indexOf(";",c_start);
  47. if (c_end == -1) c_end = document.cookie.length;
  48. return decodeURIComponent(document.cookie.substring(c_start,c_end));
  49. }
  50. }
  51. return "";
  52. }
  53. var showadvert = function (url,objId)
  54. {
  55. var xmlhttp;
  56. if (window.XMLHttpRequest)
  57. { xmlhttp = new XMLHttpRequest(); }
  58. else
  59. { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); }
  60. xmlhttp.onreadystatechange = function ()
  61. {
  62. if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
  63. {
  64. var _txt = xmlhttp.responseText;
  65. _txt = _txt.replace("document.write(\"","");
  66. _txt = _txt.replace("\")","");
  67. _txt = _txt.split("\\").join("");
  68. if (objId)
  69. document.getElementById(objId).innerHTML = _txt;
  70. }
  71. }
  72. xmlhttp.open("GET",url,true);
  73. xmlhttp.send();
  74. }
  75. var showSelectBox = function ()
  76. {
  77. $(document).click(function (event)
  78. {
  79. var _box = $(".mSelectBox");
  80. var _select = _box.children(".mSelect");
  81. var _list = _box.children(".mSelectList");
  82. if (_browser.name == "msie")
  83. {
  84. if (event.srcElement.className == "mSelect")
  85. {
  86. if (_list.css("display") == "block")
  87. {
  88. _list.css("display","none");
  89. } else { _list.css("display","block"); }
  90. }
  91. else { _list.css("display","none"); }
  92. } else
  93. {
  94. if ($(event.target).attr("class") == "mSelect")
  95. {
  96. if (_list.css("display") == "block")
  97. {
  98. _list.css("display","none");
  99. }
  100. else { _list.css("display","block"); }
  101. }
  102. else { _list.css("display","none"); }
  103. }
  104. });
  105. }
  106. var showNavSelect = function () {
  107. $("#nav-all-box").children("li").each(function () {
  108. var $this = $(this);
  109. var css = $this.attr("class") || "";
  110. if (-1 < css.indexOf("js-dropdown")) {
  111. var $dl = $this.children("dl").eq(0);
  112. $this.hover(
  113. function () { $dl.slideDown("fast"); },
  114. function () { $dl.slideUp("fast"); }
  115. );
  116. }
  117. });
  118. }
  119. var scrollTrend = function ()
  120. {
  121. if (_browser.name == "msie" && parseInt(_browser.version) == 6)
  122. {
  123. return true;
  124. }
  125. var position = "fixed";
  126. var b = $("#chartBody");
  127. var p = { t: b.offset().top,h: b.height() };
  128. $("div.scrollBanner").each(function ()
  129. {
  130. var $this = $(this);
  131. var st = $(window).scrollTop();
  132. if (st >= p.t && st < p.t + p.h)
  133. {
  134. $this.css({ position: position,display: "block" });
  135. } else { $this.hide(); }
  136. });
  137. }
  138. //设为首页
  139. var sethomepage = function (url)
  140. {
  141. if (document.all)
  142. {
  143. document.body.style.behavior = 'url(#default#homepage)';
  144. document.body.setHomePage(window.location.href);
  145. } else if (window.sidebar)
  146. {
  147. if (window.netscape)
  148. {
  149. try
  150. {
  151. netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
  152. } catch (e)
  153. {
  154. alert("该操作被浏览器拒绝,如果想启用该功能,请在地址栏内输入 about:config,然后将项 signed.applets.codebase_principal_support 值该为true");
  155. }
  156. }
  157. var prefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces.nsIPrefBranch);
  158. prefs.setCharPref('browser.startup.homepage',window.location.href);
  159. } else
  160. {
  161. alert('您的浏览器不支持自动设置首页, 请使用浏览器菜单手动设置!');
  162. }
  163. }
  164. //加入收藏
  165. var addfav = function ()
  166. {
  167. if (document.all)
  168. {
  169. try
  170. {
  171. window.external.addFavorite(window.location.href,document.title);
  172. } catch (e)
  173. {
  174. alert("加入收藏失败,请使用Ctrl+D进行添加");
  175. }
  176. } else if (window.sidebar)
  177. {
  178. window.sidebar.addPanel(document.title,window.location.href,"");
  179. } else
  180. {
  181. alert("加入收藏失败,请使用Ctrl+D进行添加");
  182. }
  183. }
  184. //图片缩放 参数(图片,允许的宽度,允许的高度)
  185. function DrawImage(ImgD,iwidth,iheight)
  186. {
  187. var image = new Image();
  188. image.src = ImgD.src;
  189. if (image.width > 0 && image.height > 0)
  190. {
  191. if (image.width / image.height >= iwidth / iheight)
  192. {
  193. if (image.width > iwidth)
  194. {
  195. ImgD.width = iwidth;
  196. ImgD.height = (image.height * iwidth) / image.width;
  197. } else
  198. {
  199. ImgD.width = image.width;
  200. ImgD.height = image.height;
  201. }
  202. }
  203. else
  204. {
  205. if (image.height > iheight)
  206. {
  207. ImgD.height = iheight;
  208. ImgD.width = (image.width * iheight) / image.height;
  209. } else
  210. {
  211. ImgD.width = image.width;
  212. ImgD.height = image.height;
  213. }
  214. }
  215. }
  216. }
  217. //search
  218. checkTerm = function (min,max)
  219. {
  220. var newterm = $("#newterm").val();
  221. newterm = $.trim(newterm);
  222. if (isEmpty(newterm))
  223. {
  224. $("#newterm").val("");
  225. alert("期数不能为空!");
  226. return false;
  227. }
  228. if (isNaN(newterm))
  229. {
  230. $("#newterm").val("");
  231. alert("请输入正确的期数值!");
  232. return false;
  233. }
  234. if (!isInteger(newterm))
  235. {
  236. $("#newterm").val("");
  237. alert("请输入整数!");
  238. return false;
  239. }
  240. if (newterm.length >= max || newterm.length <= min)
  241. {
  242. $("#newterm").val("");
  243. alert("请输入正确的期数格式!");
  244. return false;
  245. }
  246. $("#newterm").val(newterm);
  247. $("#form1").submit();
  248. }
  249. isEmpty = function (str)
  250. {
  251. if (str == "")
  252. {
  253. return true;
  254. }
  255. var regu = /^[ ]+$/;
  256. var re = new RegExp(regu);
  257. return re.test(str);
  258. }
  259. isInteger = function (str)
  260. {
  261. var regu = /^\+?[0-9]+$/;
  262. var re = new RegExp(regu);
  263. return re.test(str);
  264. }
  265. //农历计算与显示
  266. var CalConv = function (objId) {
  267. if (typeof (objId) == "undefined") { return; }
  268. var _o = document.getElementById(objId);
  269. if (typeof (_o) == "undefined") { return; }
  270. var tagLunarCal = function (d, i, w, k, m1, m2, m3, m4, m5, m6, m7, m8, m9, m10, m11, m12, m13) {
  271. this.BaseDays = d;
  272. this.Intercalation = i;
  273. this.BaseWeekday = w;
  274. this.BaseKanChih = k;
  275. this.MonthDays = [m1, m2, m3, m4, m5, m6, m7, m8, m9, m10, m11, m12, m13];
  276. return this;
  277. };
  278. var GetLeap = function (year) {
  279. if (year % 400 == 0)
  280. return 1;
  281. else if (year % 100 == 0)
  282. return 0;
  283. else if (year % 4 == 0)
  284. return 1;
  285. else
  286. return 0;
  287. };
  288. var LunarCal = [
  289. tagLunarCal(27, 5, 3, 43, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1),
  290. tagLunarCal(46, 0, 4, 48, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1), /* 88 */
  291. tagLunarCal(35, 0, 5, 53, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1), /* 89 */
  292. tagLunarCal(23, 4, 0, 59, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1),
  293. tagLunarCal(42, 0, 1, 4, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1),
  294. tagLunarCal(31, 0, 2, 9, 1, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0),
  295. tagLunarCal(21, 2, 3, 14, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1), /* 93 */
  296. tagLunarCal(39, 0, 5, 20, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1),
  297. tagLunarCal(28, 7, 6, 25, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1),
  298. tagLunarCal(48, 0, 0, 30, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1),
  299. tagLunarCal(37, 0, 1, 35, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1), /* 97 */
  300. tagLunarCal(25, 5, 3, 41, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1),
  301. tagLunarCal(44, 0, 4, 46, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1),
  302. tagLunarCal(33, 0, 5, 51, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1),
  303. tagLunarCal(22, 4, 6, 56, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0), /* 101 */
  304. tagLunarCal(40, 0, 1, 2, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0),
  305. tagLunarCal(30, 9, 2, 7, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1),
  306. tagLunarCal(49, 0, 3, 12, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 1),
  307. tagLunarCal(38, 0, 4, 17, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0), /* 105 */
  308. tagLunarCal(27, 6, 6, 23, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1),
  309. tagLunarCal(46, 0, 0, 28, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0),
  310. tagLunarCal(35, 0, 1, 33, 0, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0),
  311. tagLunarCal(24, 4, 2, 38, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1), /* 109 */
  312. tagLunarCal(42, 0, 4, 44, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1),
  313. tagLunarCal(31, 0, 5, 49, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0),
  314. tagLunarCal(21, 2, 6, 54, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1),
  315. tagLunarCal(40, 0, 0, 59, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1), /* 113 */
  316. tagLunarCal(28, 6, 2, 5, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0),
  317. tagLunarCal(47, 0, 3, 10, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 1),
  318. tagLunarCal(36, 0, 4, 15, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1),
  319. tagLunarCal(25, 5, 5, 20, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0), /* 117 */
  320. tagLunarCal(43, 0, 0, 26, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1),
  321. tagLunarCal(32, 0, 1, 31, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0),
  322. tagLunarCal(22, 3, 2, 36, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0)];
  323. var FIRSTYEAR = 1998;
  324. var LASTYEAR = 2031;
  325. var today = new Date();
  326. var SolarYear = today.getFullYear();
  327. var SolarMonth = today.getMonth() + 1;
  328. var SolarDate = today.getDate();
  329. var Weekday = today.getDay();
  330. /* 民国年月日 */
  331. var SolarCal = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
  332. var SolarDays = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334, 365, 396, 0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335, 366, 397];
  333. var sm, leap, d, y, acc, kc, Kan, Chih, Age, l1, i, LunarMonth, LunarDate, im;
  334. if (SolarYear <= FIRSTYEAR || SolarYear > LASTYEAR) return;
  335. sm = SolarMonth - 1;
  336. if (sm < 0 || sm > 11) return;
  337. leap = GetLeap(SolarYear);
  338. if (sm == 1)
  339. d = leap + 28;
  340. else
  341. d = SolarCal[sm];
  342. if (SolarDate < 1 || SolarDate > d) return;
  343. y = SolarYear - FIRSTYEAR;
  344. acc = SolarDays[leap * 14 + sm] + SolarDate;
  345. kc = acc + LunarCal[y].BaseKanChih;
  346. Kan = kc % 10;
  347. Chih = kc % 12;
  348. Age = kc % 60;
  349. if (Age < 22)
  350. Age = 22 - Age;
  351. else
  352. Age = 82 - Age;
  353. if (acc <= LunarCal[y].BaseDays) {
  354. y--;
  355. LunarYear = SolarYear - 1;
  356. leap = GetLeap(LunarYear);
  357. sm += 12;
  358. acc = SolarDays[leap * 14 + sm] + SolarDate;
  359. }
  360. else
  361. LunarYear = SolarYear;
  362. l1 = LunarCal[y].BaseDays;
  363. for (i = 0; i < 13; i++) {
  364. l2 = l1 + LunarCal[y].MonthDays[i] + 29;
  365. if (acc <= l2) { break; }
  366. l1 = l2;
  367. }
  368. LunarMonth = i + 1;
  369. LunarDate = acc - l1;
  370. im = LunarCal[y].Intercalation;
  371. if (im != 0 && LunarMonth > im) {
  372. LunarMonth--;
  373. if (LunarMonth == im) { LunarMonth = -im; }
  374. }
  375. if (LunarMonth > 12) { LunarMonth -= 12; }
  376. //2015年9月21日 星期一 农历八月初九
  377. var _week = new Array("星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六");
  378. var _months = ["正", "二", "三", "四", "五", "六", "七", "八", "九", "十", "冬", "腊"];
  379. var _days = ["初一", "初二", "初三", "初四", "初五", "初六", "初七", "初八", "初九", "初十", "十一", "十二", "十三", "十四", "十五", "十六", "十七", "十八", "十九", "二十", "廿一", "廿二", "廿三", "廿四", "廿五", "廿六", "廿七", "廿八", "廿九", "三十"];
  380. var _html = new Array();
  381. _html.push(today.getFullYear());
  382. _html.push("年");
  383. _html.push(today.getMonth() + 1);
  384. _html.push("月");
  385. _html.push(today.getDate());
  386. _html.push("日 ");
  387. _html.push(_week[today.getDay() + 1]);
  388. _html.push(" 农历");
  389. _html.push(_months[Math.abs(LunarMonth) - 1]);
  390. _html.push("月");
  391. _html.push(_days[LunarDate - 1]);
  392. _o.innerHTML = _html.join("");
  393. }
  394. $(document).ready(function(){
  395. var list = $('#navTitle').children('li');
  396. var lotRule = $('.ruleTitle').find('li');
  397. var info = $('#lotPlay').find('.info');
  398. var aLot = $('#lotRule').find('a');
  399. for(var i=0;i<list.length;i++){
  400. tabLot(i);
  401. }
  402. for(var i=0;i<lotRule.length;i++){
  403. lotRule[i].index=i;
  404. lotRule[i].onclick=function(){
  405. for(var i=0;i<lotRule.length;i++){
  406. if(lotRule[i]!=this.index){
  407. aLot[i].className='';
  408. info[i].style.display='none';
  409. }
  410. };
  411. aLot[this.index].className='bbline';
  412. info[this.index].style.display='block';
  413. }
  414. }
  415. function tabLot(l){
  416. var lotTitle = list[l].getElementsByTagName('span')[0];
  417. var lot = list[l].getElementsByTagName('ul')[0];
  418. var lotImg = lotTitle.getElementsByTagName('img')[0];
  419. lotTitle.onclick = function(){
  420. if(lot.className==''){
  421. lot.className='active';
  422. lotTitle.className ='lotTitle hover';
  423. }else{
  424. lot.className='';
  425. lotTitle.className ='lotTitle';
  426. }
  427. }
  428. }
  429. })