Hola:
Si pones una URL absoluta para cada js y es la misma en todos los iFrame (o cualquier otro documento), lo normal es que el navegador guarde en caché el fichero javascript y así no lo cargue cada vez. Esa es la base por la que google developer hospeda los javascript más usados
https://developers.google.com/speed/libraries/ . Si los cargas de ahí (de una URL siempre igual), lo más probable es que el navegador los tenga en caché y no los decargue varias veces. No te quiero decir que uses js de google developers, sino que uses el mismo concepto, es decir, usar una URL absoluta y fija para cada fichero js, independientemente de la url de la página que lo cargue.
Otra opción, algo más elaborada, es que cada js "marque" que está cargada y si no lo está, cargue el js correspondiente, añadiendo el tag script. Por ejemplo, para ver si está jquery puedes hacer algo como
Código javascript
:
Ver originalif (! window.jQuery){
// Añadir tag <script src="...jquery"...>
}
De igual forma, con el resto de tus js. Esto es más elaborado y quizás te de problemas. Si el contenido del iframe tiene una url distinta de la de otro iframe o de la página principal, es posible que no puedan verse los códigos javascript de uno en otro.
Se bueno.