¡Hay una manera! Utilizando el Content Security Policy que se apoya parcialmente en iOS 5.1 o posterior, y una cabecera personalizada:
X-WebKit-CSP: script-src none;
Se nota que el UIWebKit para no permitir javascript en la página por completo. (o selectivamente solo permite secuencias de comandos de un dominio específico, más información en spec.
Para hacer esto desde un servidor que usted controla, deberá modificar los encabezados de respuesta de la página para incluir X-WebKit-CSP encabezado ... Para hacerlo desde páginas locales (texto sin formato o datos HTML en el dispositivo), deberá definir y registrar un NSURLProtocol personalizado para cargar su página, y enviar el encabezado en su NSHTTPURLResponse elaborado:
NSDictionary *headers = [NSDictionary dictionaryWithObjectsAndKeys:
@"script-src none",@"X-WebKit-CSP",
@"text/html",@"Content-type",
encoding,@"Content-encoding",
nil];
NSHTTPURLResponse *urlResponse = [[NSHTTPURLResponse alloc] initWithURL:self.request.URL
statusCode:200
HTTPVersion:@"1.1"
headerFields:headers];
[self.client URLProtocol:self didReceiveResponse:urlResponse cacheStoragePolicy:NSURLCacheStorageAllowedInMemoryOnly];
Para iOS 8 en adelante (por comentario eliminado): "Hay una forma de hacerlo si está utilizando WKWebView nuevo en lugar de UIWebView. Esto se responde aquí. Http://stackoverflow.com/a/34404676/1239426 " – BadPirate