ホームページ  >  記事  >  ウェブフロントエンド  >  バレンタインデーにコードを入力した後、どうやってバラの花束を 12 本も受け取ったのですか (javascript)_javascript スキル

バレンタインデーにコードを入力した後、どうやってバラの花束を 12 本も受け取ったのですか (javascript)_javascript スキル

WBOY
WBOYオリジナル
2016-05-16 15:43:451203ブラウズ

さっそく、最初にレンダリングをお見せしましょう:

要約すると、この記事では、電話を切ったときに星を磨くために使用される、星を磨くためのスクリプト (フラッシュ メモリ内) を紹介します。中国のバレンタインデーでは、バラといえば絵を描くものなので、私は決してクリックベイトではありません。みんなを連れて一緒に星を描きましょう。

1. メッセージを送信します

リクエストを見て、自分で送信するシミュレーションを行ってください

$.post("http://ing.cnblogs.com/ajax/ing/Publish",   //地址
 JSON.stringify({ "content": content, "publicFlag": 1 }), //参数,json格式字符串
 function (result) {          //回调
  console.log("..............发送成功了,接下来判断是否有星星");
  result && result.IsSuccess && judgeStar(content)
 }, "json");            //返回的内容转成js对象

2. 送信したメッセージにラッキーフラッシュがあるかどうかを判断します

写真を見て話しましょう

リクエストのアドレスは次のとおりです: http://ing.cnblogs.com/ajax/ing/GetIngList?IngListType=all&PageIndex=1&PageSize=30&Tag=&_=1440087133884

名前からわかるように (これは事実です)、タイプ (私の、私の応答、新しい応答、メンション、私への返信、サイト全体)、どのページ、そしてそれぞれのページ数を選択できます。ページ。最後のはタイムスタンプです。

リクエストをシミュレートします:

$.ajax({
   url: "http://ing.cnblogs.com/ajax/ing/GetIngList?IngListType=all&PageIndex=1&PageSize=3&Tag=&_=" + (+new Date),
   type: "get",
   dataType: "text",
   success: function (result) {
    //处理的逻辑<br>    //window.doc=$(result); //可以在控制台看看出来的是什么鬼
   }
  });

dataType: "text" が使用される理由は次のとおりです。

返されるのは HTML コードの一部です。$(result) を使用すると、それが 3 つの部分に分かれていることがコンソールで確認できます。送信された部分を見つけて、ラッキー フラッシュがあるかどうかを判断する必要があります。ここでは最初の 3 つの項目だけを選択して判断します。一緒にフラッシュ メモリを更新した人が 3 人以上いると、それらを見つけることができなくなります。そのため、もう少し追加できます。ページあたりの数量。

これは、星があるかどうかを見つけて判断するために使用するコードです:

var feedDiv = $(result).eq(2);
    var msgSpan = feedDiv.find("span:contains('" + msg + "')");
    //这样找其实不严谨,尤其在大晚上的找的全是自己的...
    if (msgSpan.length > 0) {
     console.log("..............找到发送的闪存,开始判断");
    } else {
     console.log("..............未找到发送的闪存,可能脚本错误");
    }
    var id = msgSpan.attr("id").match(/body_(\d+)$/)[1];
    if (msgSpan.next("img.ing_icon_lucky").length > 0) {
     console.log("..............幸运闪 +1 【星星】");
    } else {
     //没找到星星,看来运气不好。那么就把刚刚那条删除吧!!!
    }

3. 星が付いていない「不要な」フラッシュ ドライブを削除します

星(バラ)だけが欲しい人は、無駄なものは捨ててください...

これの写真は投稿しません。コードだけを投稿します:

//删除闪存
function delMsg(id) {
 console.log("..............没有星星,删除该闪存,id为" + id);
 return $.post("http://ing.cnblogs.com/ajax/ing/del", JSON.stringify({ ingId: id }));
}

4. 概要

「スター」を獲得できるかどうかはあなたの顔次第です。私は 6 分ごとにスワイプしますが、午後と夜で 12 個しか獲得できません。

現在12時43分ですが、とても心配です。このスクリプトは会社のコンピューターにインストールされており、点滅し続けます。明日部屋が真っ暗になるかどうかはわかりません。明日の早朝に止めに行きます。

ブラウザが固まっているかどうかはわかりませんが、星が付いていないものがいくつかありますが、削除されていません...

以下は完全なコードです:

function memeda(input) {
 var times = 0;
 shuaXingXing(input);
 function shuaXingXing(content) {
  sendMsg(content);
  setInterval(function () {
   sendMsg(content);
  }, 1000 * 60 * 6 + 100);
 }
 //发送闪存消息
 function sendMsg(content) {
  console.log("....................................................................");
  times++;
  console.log("当前时间:" + new Date().toLocaleTimeString() + "  第" + times + "次发送闪存");
  console.log("..............发送闪存");
  return $.post("http://ing.cnblogs.com/ajax/ing/Publish", JSON.stringify({ "content": content, "publicFlag": 1 }), function () { }, "json")
   .done(function (result) {
    console.log("..............判断是否有星星");
    result && result.IsSuccess && judgeStar(content)
   });
 }
 //判断是否有星星
 function judgeStar(msg) {
  $.ajax({
   url: "http://ing.cnblogs.com/ajax/ing/GetIngList&#63;IngListType=all&PageIndex=1&PageSize=3&Tag=&_=" + (+new Date),
   type: "get",
   dataType: "text",
   success: function (result) {
    var feedDiv = $(result).eq(2);
    var msgSpan = feedDiv.find("span:contains('" + msg + "')");
    if (msgSpan.length > 0) {
     console.log("..............找到发送的闪存,开始判断");
    } else {
     console.log("..............未找到发送的闪存,可能脚本错误");
    }
    var id = msgSpan.attr("id").match(/body_(\d+)$/)[1];
    if (msgSpan.next("img.ing_icon_lucky").length > 0) {
     console.log("..............幸运闪 +1 【星星】");
    } else {
     delMsg(id);
    }
   }
  });
 }
 //删除闪存
 function delMsg(id) {
  console.log("..............没有星星,删除该闪存,id为" + id);
  return $.post("http://ing.cnblogs.com/ajax/ing/del", JSON.stringify({ ingId: id }));
 }
}

上記は、バレンタインデーに一人でコードを入力した後、12本のバラの花束を受け取った方法です。皆さんに気に入っていただければ幸いです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。