如何从两个不同的元素堆叠键事件和单击事件以触发相同的功能

时间:2014-08-15 17:14:59

标签: javascript jquery html css3

有没有办法将来自click元素的img事件和来自input元素的onkeypress事件结合起来以触发相同的函数?这是我到目前为止所得到的,它只为点击事件提供服务......

  <div class="dataLine2">
        <img id ="daysText" src="images/days.png">
        <img class ="days" src="images/1day.png">
        <img class ="days" src="images/2days.png">
        <img class ="days" src="images/3days.png">
        <img class ="days" src="images/4days.png">
    </div>
    <input type="text" class="stateInput" placeholder="State" maxlength="2"  value="NY" onkeypress="myFunction(???)" />

    <script> 
        //  I suspect that jQuery can stack two triggers in some daisy chain, but it eludes me...
        $('.days').on('click', function (e){
            // Do somehting crazy with the "e" being critical to the process in this function
            // 
        }
    </script> 

任何帮助将不胜感激......

丹尼斯

2 个答案:

答案 0 :(得分:1)

只需编写处理函数并分配它:

    function foo(e) {
        // do something
    }

    $('.days').on('click', foo);
    $('input').on('keypress', foo);

答案 1 :(得分:0)

我因为发布这个据称不是原创的问题而被躲了2分。不幸的是,另一个问题/解决方案并不涉及相同的想法。

另一个问题的一致解决方案是:

`$('#element').on('keyup keypress blur change', function(event) {`

这对我来说毫无用处。在我的环境中,我不是从同一个元素开火。我有5个不同的元素,每个元素都向同一个函数发送一个触发器。这在我的帖子和标题中明确说明!!!

所以我应该收到我的2分,然后允许其他积分,因为我问了一个尚未回答的原始问题。

DK