Quel est le problème : le script n'est pas du tout chargé ou il ne fait pas ce que tu souhaites ?
Un conseil : ajouter des console.log dans ta méthode de resize pour débugger et voir si tu passes bien dedans. Par exemple avant de faire la définition de tes variables height et width :
console.log($(window).height(), $(window).width());
Le mieux est d'utiliser le debugger du navigateur (F12 + Débogueur + recherche du fichier + mettre un point d'arrêt dans la méthode ), mais pour ce cas simple, le console.log fera l'affaire.
Petite remarque : je crois que la manière dont tu écris l'évènement de redimensionnement est dépréciée : ne sera plus géré avec de nouvelles versions de jquery : https://github.com/jquery/jquery-migrate/blob/main/warnings.md#jqmigrate-jqueryfnclick-event-shorthand-is-deprecated
Si je ne dis pas de bêtise, il faut désormais l'écrire de cette manière :
$(window).on('resize', function() {
...
});
Et sinon à tester, mais je crois que tu as des morceaux de code en trop (l'event hide du landscape et l'appel en trop du resize).
//part 2 //
$(window).on('resize', function() {
if($(window).width() > $(window).height()) {
$("#image").show();
$("#pimage").hide();
$("#p1").hide();
} else {
$("#image").hide();
$("#pimage").show();
$("#p1").show();
}
});