javascript xcode readability

javascript xcode readability

本文关键字:readability xcode javascript      更新时间:2023-09-26

我正在尝试使用与Safari相同的系统来转换具有可读性bookmarklet的页面。

我尝试了以下方法:

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"];

但这也没有奏效。有人能给我指正确的方向吗?

指向可读性bookmarklet网站的链接:https://www.readability.com/bookmarklets

您需要对JavaScript进行unescape(即,通过JavaScript的unescape函数运行它)。因此,使用:(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);})()