菜鸟教程小白 发表于 2022-12-11 18:02:34

ios - iOS 上的 Material Design Lite 和 dialog-polyfill 模态对话框


                                            <p><p>我正在使用 Material Design Lite (<a href="http://getmdl.io" rel="noreferrer noopener nofollow">http://getmdl.io</a>) 和 dialog-polyfill (<a href="https://github.com/GoogleChrome/dialog-polyfill" rel="noreferrer noopener nofollow">https://github.com/GoogleChrome/dialog-polyfill</a>) 来制作模态对话框。</p>

<p>在我的桌面浏览器(Chrome、Safari 等)上一切正常,但在 iOS(Chrome 和 Safari)上,我无法在模式对话框内点击。它只是没有响应。</p>

<p>我已经尝试了我看到的几个地方的建议,将“光标:指针”放在 CSS 中,但要么我没有正确执行,要么它不起作用。</p>

<p>这是我的代码中的典型模式对话框:</p>

<pre><code>&lt;dialog class=&#34;mdl-dialog&#34; id=&#34;delete_alias_confirm_dialog&#34;&gt;
&lt;h4 class=&#34;mdl-dialog__title&#34;&gt;
    Delete alias
&lt;/h4&gt;
&lt;div class=&#34;mdl-dialog__content&#34; id=&#34;delete_alias_confirm_dialog_content&#34;&gt;
    &lt;p&gt;
      Alias has been successfully deleted.
    &lt;/p&gt;
    &lt;form action=&#34;#&#34;&gt;
      &lt;div class=&#34;mdl-dialog__actions&#34;&gt;
            &lt;button type=&#34;button&#34; class=&#34;mdl-button mdl-button--raised mdl-button--colored&#34; onClick=&#34;delete_alias_confirm_dialog.close()&#34; id=&#34;delete_alias_confirm_dialog_ok_button&#34;&gt;OK&lt;/button&gt;
      &lt;/div&gt;
    &lt;/form&gt;
&lt;/div&gt;
&lt;/dialog&gt;

&lt;script&gt;
    var delete_alias_confirm_dialog = document.querySelector(&#39;#delete_alias_confirm_dialog&#39;);

    if (! delete_alias_confirm_dialog.showModal) {
      dialogPolyfill.registerDialog(delete_alias_confirm_dialog);
    }

    var delete_alias_curr_name=&#34;&#34;
    function show_delete_alias_confirmation(clicked_element) {
      delete_alias_curr_name=((clicked_element.parentNode).parentNode).parentNode.parentNode.querySelector(&#39;#alias_name&#39;).innerText
      var delete_alias_dialog_delete_button=document.querySelector(&#39;#delete_alias_dialog_delete_button&#39;);
      var delete_alias_dialog_alias_name=document.querySelector(&#39;#delete_alias_dialog_alias_name&#39;);
      delete_alias_dialog_alias_name.innerHTML=delete_alias_curr_name
      delete_alias_dialog.showModal();
      delete_alias_dialog_delete_button.blur();
    }
&lt;/script&gt;
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>检查加载 CSS 的顺序。</p>

<p>如果您在 <code>material.min.css</code> 之前加载 <code>dialog-polyfll.css</code>,这可能是问题的根源。</p>

<p>还要检查您是否没有 <code>dialog</code> 重复项,这也会导致在 IOS 上无法关闭的对话框。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - iOS 上的 Material Design Lite 和 dialog-polyfill 模态对话框,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/40564336/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/40564336/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - iOS 上的 Material Design Lite 和 dialog-polyfill 模态对话框