I’m trying to change a button color in an iFrame bases on the drop down list. My code works every time in Chrome but in IE it works about 45% of the time. It fails on loading. If it works on load it keeps working. If it fails on load it never works. Note, this is a DNN site.
Non-repeatable bugs drive me crazy. Any ideas?
Thanks!
function buttonColor() { var color switch ($(this).val()) { case "Orange": color = "#FF8429"; break; case "Green": color = "#00C354"; break; }; var btn = $(this).closest("td").siblings("td").find(".btnPayPal"); btn.css("background-color", color); btn.css("border", "1px solid " + color); }; // END buttonColor </script> <script> $(window).ready(function () { $(".iFProductOne").load(function () { $(".iFProductOne").contents().find(".ddlPayPal").on("change", buttonColor) }); $(".iFProductTwo").load(function () { $(".iFProductTwo").contents().find(".ddlPayPal").on("change", buttonColor) }); console.log("Win Ready"); }); </script>
Did you really put : $(window).ready(function ()
instead : $(window).load(function ()
rcl58
ASKER
I have the code in $(window).ready because in reality I have six iframes on the page and it was binding to maybe two sporadically which lead me to believe that all the iframes were not loaded yet. I tried it in $(document).ready, $(window).load and just in <script>. I’ve gotten closest with in $(window).ready.
I have also added a trigger to to compensate for the widow being completed.
instead : $(window).load(function ()