The problem you have is that we cannot replicate your site to test to see what’s causing the issue because you are running a premium theme and custom child theme. The first thing we would do would be to identify if the issue were being caused by the theme or a plugin by changing to a default theme and by disabling all (other) plugins.
Seeing as you are unable to do this (we would highly recommend that you setup a development web server so that you can do in future) then we can still diagnose the issue, it’ll just take longer for us to do so …
Anyway, we have identified what is causing the problem. The lines after 1096 of /wp-content/themes/Divi/js/scripts.min.js
…
})), t.find("li.menu-item-has-children").on("touchend", (function(t) {
var e = n(t.target).closest(".menu-item");
if (e.hasClass("menu-item-has-children")) {
var i = n(this),
a = e.closest(".mega-menu-parent.et-touch-hover").length > 0;
if (i.hasClass("et-touch-hover") || a)
void 0 !== i.find(">a").attr("href") && (window.location = i.find(">a").attr("href"));
else {
var o = n(t.target),
r = o.closest(".menu-item").siblings(".et-touch-hover");
if (o.closest(".et-touch-hover").length < 1 && window.et_pb_toggle_nav_menu(n(".et-hover"), "close", 0), i.addClass("et-touch-hover"), r.length > 0) {
var s = r.find(".et-touch-hover");
window.et_pb_toggle_nav_menu(r, "close"),
window.et_pb_toggle_nav_menu(s, "close")
}
window.et_pb_toggle_nav_menu(i, "open")
}
t.preventDefault(),
t.stopPropagation()
}
})), t.find("li.mega-menu").each((function() {
… we think are adding a touchend
event to the parent li
element preventing the dropdown click event from being triggered.
We have successfully diagnosed this as being the cause by disabling the relevant touchend
event in the console on an iPhone 13 after which the dropdowns function normally.
Perhaps there is an option in Divi theme to disable this “feature” whatever it is?
Oliver