Facebook - удалить людей, которых вы можете знать - PullRequest
1 голос
/ 04 мая 2011

Я сейчас вхожу в фейсбук. Этот всплывающий раздел "люди, которых вы, возможно, знаете" заставляет меня отвлекаться, и я просто пытаюсь избавиться от него.

У меня есть скрипт greasemonkey, но он не работает. Ни один из многочисленных опубликованных скриптов Greasemonkey для его удаления тоже не работает.

В источнике для страницы facebook раздел «Люди, которых вы знаете» (PYMK) находится в элементе сценария, который содержит только один очень длинный вызов функции, т.е.

<script>big_pipe.onPageletArrive({"phase":1,"id":"pagelet_ego_pane","is_last":true,"css":["30YXW","MA+x5"],"js":["uBXoU","LNwoY","NavLF","ZtuLL"],"onload":["window.__UIControllerRegistry[\"c4dc09ff06275f0732488206\"] = new UIPagelet(\"c4dc09ff06275f0732488206\", 
...

Итак, я просто пытаюсь удалить этот элемент скрипта и попробовал это в качестве первого прохода:

function Remove_PYMK() {


  var scripts = document.getElementsByTagName('script');    


  for (n=0; n<scripts.length; n++) {    
    if (scripts[n].innerHTML.indexOf("People You M") >=0) { 
      scripts[n].style.visibility="hidden";
      alert ("found it");   
    }   
  } 


}


Remove_PYMK();

//document.addEventListener("onload", Remove_PYMK, true);

Он находит это, он просто не удаляет его.

Это что-то вроде клуджа, само собой разумеется. Есть ли правильный способ отключить PYMK и ТАКЖЕ запретить отображение моего имени в PYMK на странице других людей.

EDIT:

Вот весь узел сценария вплоть до строки «Люди, которых вы можете знать» (FWIW):

<script>
    big_pipe.onPageletArrive({
        "phase": 1,
        "id": "pagelet_ego_pane",
        "is_last": true,
        "css": ["30YXW", "MA+x5"],
        "js": ["uBXoU", "LNwoY", "NavLF", "ZtuLL"],
        "onload": ["window.__UIControllerRegistry[\"c4dc09ff06275f0732488206\"] = new UIPagelet(\"c4dc09ff06275f0732488206\", \"\\\/pagelet\\\/generic.php\\\/WebEgoPane\\\/\", {}, {});; ;", "new EmuController(\"6002939839588-id_4dc09ff0611f60c83869379\", \"AQBsgeDBRnJ4uiUuieZs681Fm3aqB5-626iHBbItdNfF5TWZZJ-9dZ60xyVaJr7JfimJpKgKNxXqF_DH_aHjru3RItUcHs2gI_ZLQNYdIENRSM5zh_pcjiDZyN7vv0trj5UDBOfXp6A6yDdVCZDLntgw1fU3cFSjPQkk9KQHnU3B61bkLQfoyQzysiefB82Ptf7tgkHDqlDwNpUT-HhYPOr8yGKxD6XavtgIfsW9hLPfGy6Eg7POsGHDyXrIDrl-Q3HM2CPoByeL43H0wIklCdbe8Oi3VnfKa-ysGjLB8YuAZHOJ1GH9feOxFphmcHE5C1R15rcPdnXSOaBI5bIJdJ24pIfAlNmGjXSMHU5LOiBm3FvCi_WzotJKxeRPjMBRmqQXw2CJ-xhFGGFqGRfJvoa9m8XKb1YpXzx-pqcpzDJ1z2xz3TT7gvObi5U-9ZaRtzNHY5g0UI3W-JeYjC-67Ir74mltDpXojdx-fWG5c-3OoX5bNJrCh1ifbQKFn3wLDAMdUHk4h8GO5eJdP_1xvJFal0SWZnwnMbty2AAd7EeFcSQNkjdK9BViqFo7OLLh8tT-j9k1fNnccza4M9jN94NEEjXRxU2KYhSGjdKL0fMJCfYA1y-3MMi7WbwEg7QiH-0AY_vQCu75j7vBtrwhjVpIK4kpBpNLYx5ucqLMe1RXt3PkE-xY0Jr5LRtwDq6MjeLrCjP0JaBL9o55o2DGPN-MNndM5YSCiZbri6ms7kJ0DADuZxiWkZDISrZlE_RZ4-8\", 4, 0)", "new EmuController(\"6003087448525-id_4dc09ff0612184c51197177\", \"AQAVDQezDWg8RCTH6EnPLCILHIX4upfP5v0NJ_-npYstbN0e4SWpCrfbYAQRM_9dVfozxS89XSxUt1jgEQpRbTHE3sfkcngkwyKIjKGhmIS8rKfDX_gP4ER0NnVJlJyX6FaGRul0h2UUYxnxj3uaIsq7LzcI36r4lBTXBg1THtRC2pZ1MuUzvkTlYlwh4B-c5lXwt-6nKTTMdoZsTRsUDG_JTAPHeTV0-FYMr-1roaJpR_j--aw_MxJ6NxFEbTvkyL4QVN-ZRpWfeovChdYk4j_cgxoxRE-qm-u_hYcVbbtVrQXq0kVtHHhX8ijyeLt-4kZcM6gfnHpfBkB06z69adcA9rzWLA6VEo4_OFthPtc2SydkBs6DyAx51mAG3mBgnXXBJciYrQzWM-vSvODcV1dKTb5tSxO81Uswl-3Uo9Jf_VzfUgoKdeHyQeem31WMUmYm9kxCOVvKy4p7sE09GQoAfPBoz4MOrAgs3MFBFzpwIvKyZGvE6cX8haiK4POdP1zrEnMLFDyF0HRAaxfl4gKYw9kpGOtkrwezzU_biPYxV26-sUjXvPGx87WAZszqlIosXOJVux33eJD3V5bDcFD06Faze9OE5Segl4Tdmd0VZs73lt4PGXfF90QLCqZeUuNUUCkhRRRsP99SdW99Ghx0JncIQDpfX3fByce58jmKSCFWjcHy5qTPlryVI3KVow-XMLiguVmdbicCBGq-7im00hCmjH2-5HCuQnhHafNHUSZzZiHTg4KaTqvIMTfQIXs\", 4, 0)", "new EmuController(\"6003788660296-id_4dc09ff0612299683640305\", \"AQCvUWOfDiphu5NGe7r6dBna_IEvTbjrshIpxmOlMO3jwk650AHb_T03II0mnzLwpdy617kQMD8n8RIE_YqIE1hNxxoZL4M4ba8QiPz6h-u003c\/h4>\JW8WSPFBt1RSMeJQV7swF6HWeAm3Ew0fphxMwpdYDIu2fbEGLujVFCKwtMCzN6As6berB8z7iOoWdsAFulXLBLvHID0-Dn0_qCxF-AKl0b9s8cWBwF9fG1oI0r1TNQZGILLW8daCOkkjhpCUOHkXI6PFxyw5CXYLSmnVAxpvougwh7vt-NV3RWPuYnLN1QOvf07q2DRv-2wY1JUexmcWl6f5zquDJfEW3CxlluJ76eKZowfiGW-V-1M9K9whgfALkEjGDA-JM9P_lfXaukcmDDwAIHLFwG_7a9jNP4XmbLUyQEhUesxkImM5z7IAzt-HBIbtDfD8kHt50AG3nm3GEHv-yChqKMWqmcuzyYgmMGaXXKCd9Pb2a_pcF-QR_YIg2qgptFnn82D7Bb9Tedmce-FveNix9Ej7_fwr-IAncYwABNrs9zX34TkbLgvqhvH9RayLDXO7GnGWB_I4jorTbmNvpxf0rG8aXp3udXdNTEZAjmU3Yp1TOySAXY2Z5Ju6oYS51-tQ2SZIihYsa49TxQdSHet9vO4tjY_7rwT8Cou_TrmFWwZXuQTGwfUByP9Cl6wrUNhHeW3zbrB-BAxofxqcGQ44C7HPsvVTdkSOKhx60zaWaaBnDZ87QjEAgNJ-NjN8EqO_jMq3ig2Vn2CKzBhhQ\", 4, 0)", "new EmuController(\"6002985380734-id_4dc09ff06123a8641112115\", \"AQBkHx98vGQ8Bn2h8R42L-S1OQfGO1ksTR41Mds3V7wEwzKNgBG4H2o-EHRvRSd9SsIPGChah-NHU5Jt_wbtng06_Dw0U0WkxfBkFx374OINZj69o69sPYmoQZlY2xsClxS0T2t_h7zs9RzX4NpvYtSL6I3MALL0CsWS0KLv-CQHUF-IWpeNj6uGLG4efTFLBBMeQM0-Wr1IWYXU6oQZJRPwS7trOw4xW56wGBnhGPv1KRwr8ITU4NGUZlBKrUNRvx1SeyFn4MYNCrzXG0W_HxsWWv_ekTeDefvMF0gHZNDgcA07-FLEYxfCEzBL498OERPhoyBsmFE9fGbOY1EcO_LB_moqIncJF-TosooObw7f4BMZwHMxfGgju_UKndyeRq_l3pcTkSyjhbZY5-1sjojM8AI9VxCLdQms5QA7lvflmdPpwXS3b8UmCNfEtIy4iGED7yL7p1CKAKgJcO4jzmJ3Epk9tK38zy3Nv5yGB0-63dwjcvZMoTJMa545d2Vgs7J5_OiD6gA5fX4oB84m1dcI5e2G6AgzXAsWTUSuIGliPQr2oFjaz2mOzepyCvoatPjr1rtDkX_xNK9S27jXSuu9k0tiKCOkPsdccPO6235zCT0HeiPI0sHsUTpDmiFXHyFx0r_Kus5iCU5CjKjX1okSuKQL7WM5HTBvYRCAbPNthqa9oNDDNmwNG-Im7wNZHEw4ZZuXpqg4UolyUZAkY7dKBRvGmK0sSGSIjIISOq1e6zBdekf7OlZ5yLnCwhAI_5E\", 4, 0)"],
        "onafterload": ["new EmuTracker(\"6002939839588-id_4dc09ff0611f60c83869379\", false)", "new EmuTracker(\"6003087448525-id_4dc09ff0612184c51197177\", false)", "new EmuTracker(\"6003788660296-id_4dc09ff0612299683640305\", false)", "new EmuTracker(\"6002985380734-id_4dc09ff06123a8641112115\", false)"],
        "refresh_pagelets": ["c4dc09ff06275f0732488206"],
        "content": {
            "pagelet_ego_pane": "\u003cdiv id=\"c4dc09ff06275f0732488206\">\u003cdiv class=\"ego_column egoOrganicColumn\">\u003cdiv class=\"ego_section\">\u003cdiv class=\"uiHeader uiHeaderTopAndBottomBorder mbs uiSideHeader\">\u003cdiv class=\"clearfix uiHeaderTop\">\u003ca class=\"uiHeaderActions rfloat\" href=\"\/l.php?u=\u00252Ffind-friends\u00252Fbrowser\u00252F\u00253Fref\u00253Dpsa&amp;h=1ef37&amp;cb=3&amp;p=AQCicK3gLdJTaaW2xZUw3DWp7N89P5QwZvSEfn3y2vOqjXyzr60nDcHEPY7Y9x7LpK9-J5evLB7_Dwm9F4d0k5i9sQ-CXiH_GXc-toIfka4dUSK_\">See All\u003c\/a>\u003cdiv>\u003ch4 class=\"uiHeaderTitle\">People You May Know\u003c\/div>

Ответы [ 2 ]

1 голос
/ 04 мая 2011

Этот скрипт GM не удаляет узел script, он просто «скрывает» его - что никогда не даст эффекта.

Возможно, что GM действительно удалит этот узел script, но, увы, этого не произойдет до того, как узел запустится. Удаление этого после этого не остановит операцию, поскольку JS уже загружен в память.

Самый простой способ - это удалить контейнер, в котором отображается пифт PYMK.
Я не пользуюсь Facebook, но из вашего кода видно, что контейнер может иметь идентификатор "pagelet_ego_pane". В этом случае вы можете удалить его как:

var PYMK_Container  = document.getElementById ('pagelet_ego_pane');
if (PYMK_Container) PYMK_Container.parentNode.removeChild (PYMK_Container);

Вы также можете попытаться удалить раздражающую функцию, которая может быть или не быть возможной. Функция появляется для установки с этим кодом new UIPagelet(\"c4dc09ff06275f0732488206\". Итак, если вы можете найти соответствующую функцию, вы можете попробовать удалить ее с помощью:

unsafeWindow.OffendingFunctionName = function() { return; }

Если это сработает, это может сократить "отток" JavaScript, который может замедлить эту страницу.

Что касается того, чтобы ваше имя не отображалось в PYMK других людей, это то, что делается серверами Facebook, возможно, у них есть пользовательские настройки, в противном случае вам придется отправить Facebook "строго сформулированное письмо". ». ;)

0 голосов
/ 22 августа 2014

Более простой способ сделать это - просто добавить пользовательскую таблицу стилей, которая скрывает нарушающие узлы, без необходимости использования javascript.

Однако, если вам нужен простой метод, который просто работает «из коробки» для скрытия поля «Люди, которых вы знаете», аддон браузера FB Purity (также доступен как greasemonkeyскрипт) имеет возможность скрыть окно PYMK, а также скрыть большинство других ящиков / ссылок на сайте.

...