簡體   English   中英

顏色輸入框 <input type='color'> 不適用於輸入事件

[英]Color input box <input type='color'> does not work with input event

在addEventListener()中使用'input'事件時,它不能與顏色輸入框一起正常工作。

HTML是:

<input type="color" value="#ff0000" id="colorWell">
 <p>Text to be colored</p>

Javascript是:

var colorWell = document.getElementById('colorWell');
colorWell.addEventListener("input", updateFirst, false);

function updateFirst(event) {
  var p = document.querySelector("p");

  if (p) {
    p.style.color = event.target.value;
  }
}

應該發生的是,當單擊顏色框中的顏色時,應觸發“ input”事件偵聽器,從而導致<p>標記中的文本變為彩色。 這一切都應在單擊顏色框的“確定”按鈕之前發生。

這不會發生-僅在單擊“確定”按鈕后才會着色。

我正在使用Chrome。 這是Chrome問題嗎? 如果是這樣,是否有解決方法?

 var colorWell = document.getElementById('colorWell'); colorWell.addEventListener("input", updateFirst, false); function updateFirst(event) { var p = document.querySelector("p"); if (p) { p.style.color = event.target.value; } } 
 <input type="color" value="#ff0000" id="colorWell"> <p>Text to be colored</p> 

在您的"input"上方(或下方)添加...addEventListener("click",... "input"

完整樣本如下:

 var colorWell = document.getElementById('colorWell'); colorWell.addEventListener("click", updateFirst, false); colorWell.addEventListener("input", updateFirst, false); function updateFirst(event) { var p = document.querySelector("p"); if (p) { p.style.color = event.target.value; } } 
 <input type="color" value="#ff0000" id="colorWell"> <p>Text to be colored</p> 

請看下面-

    <html>
    <body onLoad="startup()">
    <script language="javascript" >

     function startup()
     {
       colorWell = document.querySelector("#colorWell");

       colorWell.addEventListener("input", updateFirst,false); 
       colorWell.select();
    }




    function updateFirst(event)
    {
       var colorWell = document.getElementById('colorWell');
       var p = document.querySelector("p");

      if (p)
       {

          p.style.color = event.target.value;
       }
   }


   </script>
   <input type="color" value="#ff0000" id="colorWell" onSelect='alert("X")'>
   <p>Text to be colored</p>


   <input class="Randombutton" style="float: left;" type="button" value="Randomize" 
    onclick="randomImg()">

    <div id="quote">

   </div>
   </form>
   </body>
   </html>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM