小编Kal*_*r S的帖子

即使在使用stopPropagation之后,标签内的元素的事件处理程序也会被执行

我在标签内嵌入了很少的元素(比如输入,段落,radiobutton任何元素).此标签的父级是div标签.应用事件处理程序,用于标签内的所有元素以及除标签标记之外的父div.在所有事件处理程序中也应用了stopPropagation.但是,当我点击任何内标签的元素,然后相应的事件处理程序被调用,并且因为stopPropagation是存在的,它是制约父事件处理函数被调用.直到这里很好.但问题是它还在调用其兄弟姐妹的事件处理程序.

 <div class="scroll-content-item" data-pid="1773">
      <label>   
         <span class="custom">Custom</span>
         <input type="text" class="text custom_width" id="cust_width" value="960"/> 
         <p class="para"> This is test para</p>
      </label>
  </div> 
Run Code Online (Sandbox Code Playgroud)

jQuery代码

jQuery(document).ready(function($) {

    $('.para').click(function(event) {
        alert("paragraph event ");
        event.stopPropagation();
    });

    $('.custom_width').click(function(event) {

        alert("input custom width event ");
        event.stopPropagation();
    });



    $('.scroll-content-item').click(function(event) {
        alert("parent div event ");
        event.stopPropagation();
    });

});?
Run Code Online (Sandbox Code Playgroud)

当我点击段落时,它的事件处理程序和输入类型的处理程序也会被调用.当我用类自定义单击span时,因为它没有事件处理程序,所以先调用parent,然后调用后面的输入类型处理程序.

您可能会问的问题是嵌入p,输入和标签内的所有内容的目的是什么.我们使用自定义input type="file" 我们在输入类型文件上覆盖标签数据,但是onclick必须触发标签输入类型文件.对于同样的我在标签内嵌入元素

只是想知道为什么即使我正在使用这两个事件处理程序也会被调用stopPropagation.

作为参考,我创建了jsfiddle:http://jsfiddle.net/x7xQg/29/

提前致谢

css jquery

3
推荐指数
1
解决办法
1928
查看次数

iFrame和媒体查询问题

我对iFrame中内容的媒体查询内部的样式存在问题.我在我们的网站上嵌入了iFrame.我们有iFrame内容的样式.我的iFrame宽度是480px.我有一个媒体查询@media屏幕和(max-width:480px)我在iFrame内容中添加样式.

问题是,当在大小为1900px宽度的桌面浏览器中打开页面时(iFrame大小相同为480px),最大宽度:480px的媒体查询内的样式正在应用.但是当我在iPad中打开同一页面时,它不考虑媒体查询的iFrame宽度,并采用屏幕宽度和应用768px宽度的媒体查询样式.

据我所知,必须呈现iFrame宽度和iFrame宽度媒体查询样式,因为iFrame包含整个html页面.请告诉我如何解决iPad问题.

iframe media-queries

2
推荐指数
1
解决办法
9340
查看次数

StreamTrack 的 readyState 在播放流之前被更改为已结束(MediaStream - MediaStreamTrack - WebRTC)

jsfiddle ( https://jsfiddle.net/kalyansai99/mm1b74uy/22/ ) 包含用户可以在手机的前后摄像头之间切换的代码。

在少数手机(Moto g5 plus、Moto E3 等 - Chrome 浏览器)和少数手机(Mi Redimi Note 4 - Chrome 浏览器)中,当我切换到后置摄像头时,它的工作正常,最初流正在加载轨道“readyState”作为“live”。但是当我要在视频播放器中播放流时,“readyState”变为“已结束”并且视频标签上显示黑屏。

不知道发生了什么。有什么线索吗?

JSF 中间代码

var player = document.getElementById('player');
var flipBtn = document.getElementById('flipBtn');
var deviceIdMap = {};
var front;

var constraints = {
    audio: false,
    video: {
        frameRate: 1000
    }
};

var gotDevices = function (deviceList) {
    var length = deviceList.length;
    console.log(deviceList);
    for (var i = 0; i < length; i++) {
        var deviceInfo = deviceList[i];
        if (deviceInfo.kind === 'videoinput') {
            if (deviceInfo.label.indexOf('front') …
Run Code Online (Sandbox Code Playgroud)

webrtc mediastream

1
推荐指数
1
解决办法
2044
查看次数

标签 统计

css ×1

iframe ×1

jquery ×1

media-queries ×1

mediastream ×1

webrtc ×1