Error de tipo no capturado: no se puede leer la propiedad 'safari' de undefined

Tengo este jjavascript para cambiar el tamaño de iframes:

 $(function () {

            var iFrames = $('iframe');

            function iResize() {

                for (var i = 0, j = iFrames.length; i < j; i++) {
                    iFrames[i].style.height = iFrames[i].contentWindow.document.body.offsetHeight + 'px';
                }
            }

            if ($.browser.safari || $.browser.opera) {

                iFrames.load(function () {
                    setTimeout(iResize, 0);
                });

                for (var i = 0, j = iFrames.length; i < j; i++) {
                    var iSource = iFrames[i].src;
                    iFrames[i].src = '';
                    iFrames[i].src = iSource;
                }

            } else {
                iFrames.load(function () {
                    this.style.height = this.contentWindow.document.body.offsetHeight + 'px';
                });
            }

        });

En cromo, tiene problemas aquí:

 if ($.browser.safari || $.browser.opera) {

¿Hay alguna razón por la que me sale este error? Estoy usando la última JQuery?

Gracias

Respuestas a la pregunta(4)

Su respuesta a la pregunta