2011-06-20 8 views
0

Safariのように、同じシステムを使用して読みやすいブックマークレットのページを変換しようとしています。javascript xcodeの可読性

私は次のことを試してみました:

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

+0

@Casey:おそらくこれはコメントではなく答えになるはずです。 – PengOne

+0

申し訳ありませんが、出てきた限り私のコメントは意図していませんでした! –

+0

私はjavascriptとxcodeのかなり新しいです。あなたはコードを置くようにもっと具体的に教えてください。あなたのコードで両方の方法を試しましたが、成功しませんでした。 – BlockReader

答えて

0

あなたはJavaScriptを(つまりは、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);})()

+0

私は役に立たなかった:NSString * searchURL = @ "(function(){window.baseUrl = 'https://www.readability.com'; window.readabilityToke n = ''; var s = document。 s.setAttribute( 'type'、 'text/javascript'); s.set tAttribute( 'charset'、 'UTF-8'); s.setAttribute( 'src'、baseUrl + '/ bookmarklet/read.js '); document.documentElemen t.appendChild();})() "; NSURL * url = [NSURL URLWithString:[searchURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; [webBrowser loadRequest:[NSURLRequest requestWithURL:url]]; ' – BlockReader