читабельность JavaScript кода - PullRequest
0 голосов
/ 20 июня 2011

Я пытаюсь использовать ту же систему для преобразования страницы с закладкой читабельности, что и Safari.

Я попробовал следующее:

NSString *searchURL = @"javascript:(%28function%28%29%7Bwindow.baseUrl%3D%27https%3A//www.readability.com%27%3Bwindow.readabilityToken%3D%27%27%3Bvar%20s%3Ddocument.createElement%28%27script%27%29%3Bs.setAttribute%28%27type%27%2C%27text/javascript%27%29%3Bs.setAttribute%28%27charset%27%2C%27UTF-8%27%29%3Bs.setAttribute%28%27src%27%2CbaseUrl%2B%27/bookmarklet/read.js%27%29%3Bdocument.documentElement.appendChild%28s%29%3B%7D%29%28%29)";

NSURL *url =  [NSURL URLWithString:[searchURL stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding]];

NSLog(@"launched readability");


// NSURL *url = [NSURL URLWithString:searchURL];
[webBrowser loadRequest:[NSURLRequest requestWithURL:url]];

, но это не сработало ..

Я также попробовал следующее:

[webBrowser stringByEvaluatingJavaScriptFromString:@"function%28%29%7Bwindow.baseUrl%3D%27https%3A//www.readability.com%27%3Bwindow.readabilityToken%3D%27%27%3Bvar%20s%3Ddocument.createElement%28%27script%27%29%3Bs.setAttribute%28%27type%27%2C%27text/javascript%27%29%3Bs.setAttribute%28%27charset%27%2C%27UTF-8%27%29%3Bs.setAttribute%28%27src%27%2CbaseUrl%2B%27/bookmarklet/read.js%27%29%3Bdocument.documentElement.appendChild%28s%29%3B%7D%29%28%29"];

, но это тоже не сработало.Может ли кто-нибудь указать мне правильное направление?

ссылка на сайт букмаркета для удобства чтения: https://www.readability.com/bookmarklets

1 Ответ

0 голосов
/ 20 июня 2011

Вам нужно удалить JavaScript (т. Е. Запустить его через функцию unescape JavaScript).Поэтому вместо того, что у вас есть, используйте: (function(){window.baseUrl='https://www.readability.com';window.readabilityToke‌​n='';var s=document.createElement('script');s.setAttribute('type','text/javascript');s.se‌​tAttribute('charset','UTF-8');s.setAttribute('src',baseUrl+'/bookmarklet/read.js');document.documentElemen‌​t.appendChild(s);})()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...