Tag: dom

为什么Webkit不能正确地重新绘制我的网页?

我有一些奇怪的问题。 我不确定我是否搞砸了,或者这甚至可能是webkit中的错误。 我正在做的是使用一些或多或少复杂的CSS技巧(:after和content,兄弟选择器等)和自定义数据属性来指示表单的输入字段是否有效。 我在每个输入字段上都有一个数据属性“data-valid”以及一个包含正则表达式的属性“data-validate”。 在keyup上,我针对输入的值运行正则表达式,并相应地设置data-valid。 然后我在输入旁边有一个小div,使用数据有效的敏感属性选择器进行样式设置。 如果兄弟的输入数据有效属性为真,则背景将显示ok符号,如果设置为false,则将显示失败符号。 因为这可能很难理解,所以我将这个jsfiddle拼接在一起,所以你可以自己看一下。 所有这些在Firefox 6和IE9中完全正常。 但是,在两个基于Webkit的浏览器(Chrome + Safari)中,这都不能100%正确地工作。 尽管数据有效属性正确更改,但样式div不会改变它的外观,直到我输入其他字符或取消聚焦输入字段。 它几乎看起来像Webkit浏览器无法重绘/重新设置特定的div。 我真的不知道发生了什么,我相当自信,这应该像我期望的那样工作。 我希望有人能提出一些见解甚至解释,也许还有一个修复/解决方法。 非常感谢!

jQuery附加订单?

我正在创建一系列评论,并回复下面的评论。 我使用此代码在评论下面附加新回复。 $(document).on(‘click’, ‘.sub-reply1-send’, function() { var reply = $(‘textarea[name=comment-reply]’).val(); $(‘.sub-reply1, .sub-reply1-textarea, .sub-reply1-send’).slideUp(250).remove(); $(‘.answer’).append(“” + reply + “”); $(‘.comment-sub-reply’).slideDown(250); subreply_visible = false; }); 如果只有一个注释要回复,这样可以正常工作,但是如果有两个注释,那么让我们说Comment1和Comment2,将在Comment2下面生成Comment1。 回复Comment1将正常工作,但回复Comment2将生成Comment1中最后一个下面的回复框。 有没有办法让我这样做,以便它附加到点击它的评论? 编辑:从我拥有的HTML标记生成。 What is the significance of this section? This is not a test Test Another Test Still underneath Test This isn’t a test either, but it’s appearing under test […]

防止iE11中的默认“F1”事件

当用户按F1键时,我打算显示我们的应用程序帮助并禁止默认操作。 我尝试了不同的选项,不显示IE的帮助弹出窗口。 这是我的代码: document.addEventListener(‘keydown’, function (e) { if (e.key === ‘F1’ || e.keyCode == 112) { e.cancelBubble = true; e.cancelable = true; e.stopPropagation(); e.preventDefault(); e.returnValue = false; //my help menu code goes here } }); 请让我知道如何在显示我的应用程序的帮助页面而不是IE帮助。 我使用的是IE11版本。

动态插入的表单输入未发布

我实际上并不经常寻求帮助,但是当我这样做时,相信我,我做得很好,没有发现任何东西。 让我们简单,但相关。我有一个表格。 部分内容如下: 当有人点击input ,我想将其移动到另一个div 。 我使用jQuery : $(“.list-model”).delegate(“.item input”, “change”, function() { listModel = $(this).closest(“.list-model”); item = $(this).closest(“.item”); insertTo = $(this).is(“:checked”) ? “connected” : “items”; insertTo = listModel.find(“.”+insertTo); $(insertTo).append(item); }); jQuery就像魔术一样, .item来回移动。 但 一旦我“触摸”实际input ,它就不会发布! 它不会显示在Chrome Form Data下的开发人员工具中,也不会显示在服务器端。

使用jQuery在祖先和多个后代之间插入元素

我想转换 成 我想保留对此之前可能已设置的内部div的任何引用,只需执行$(“#outer”).html($(” ” + $(“#outer”).html() + ” “))对我不起作用。 有没有比创建中间div更好的方法,将外部的所有子项移动到它然后将它附加到外部div?

在jquery中将事件附加到window.on(“load”,function(){})

我写了一些像jquery插件一样工作的代码,根据它们相对于彼此的高度为元素分配css。 我试图找出如何使插件工作而不调用/包装在window.on(“load”,function(){})块从函数的OUTSIDE。 我应该补充一点,如果我从外部调用它,一切运行正常 $(window).on(“load”,function(){}) 块。 我的两个问题是: 我可以为$(window).on(“load”,function(){})事件分配动作多少次? 如果我多次分配一些东西,每个后续的分配会替换第一个,我应该添加类似javascript addEventListener方法吗? 如何从中将此操作分配给此事件 (function( $ ) { $.fn.resizeCss = function() {}; })(jQuery); 块? 真的难倒在这里,任何帮助将不胜感激。

jquery从DOM获取非唯一ID

说我有这两个唯一ID’d的div,其输入元素不是唯一的ID输入。 … … 如何根据顶级div ID区分两个输入? 显然,这不起作用: $(‘#id_days_0’).attr(‘checked’) 有没有办法只关注特定div中的一个输入ID?

如何动态处理动态iframe内容的设置

我有一个页面,我需要动态创建一个iframe并将其粘贴到页面上的div中。 我像这样创建iframe: var frame = $(”) .attr(‘id’, ‘myIframe’) .addClass(‘someClass’) .appendTo($(‘#someDiv’)); 根据某些条件,我需要:A)将iframe src设置为其他页面或者B)动态地向iframe添加一些HTML。 我有选项A工作正常,但选项B抛出安全错误: if (someCondition) { // option A, works fine frame.attr(‘src’, someURL); } else { // option B, blows up with “Access is denied.” $(frame[0].contentWindow.document).find(‘body’).html(someHTML); } 在尝试设置HTML之前,是否需要在动态iframe上设置document.domain ? 我怎么会这样做? 是否有更简单的方法将动态内容附加到动态iframe? 提前致谢。 这里编辑的是动态iframe的呈现HTML,如下所示:

在将元素附加到DOM之前阻止浏览器加载图像

我的想法是,浏览器在连接到DOM之前不会尝试加载源,但是当我使用jQuery创建图像标记时,它会在我附加之前尝试加载图像源。 在创建图像标记时,jQuery是否会临时附加元素? 在此示例中,无效的URL会导致控制台中出现错误日志,即使注释掉了append命令( 在jsFiddle中查看 )。 ​$(document).ready(function() { var $img = $(“”, { height:”100px” ,width:”100px” ,src: “http://sofzh.miximages.com/jquery/bad.url.jpg” }); //$img.appendTo($(“#container”)); });​

使用jQuery创建DOM元素

我有一个function $(document).ready(function () { $(“#btnhighlight”).click(function () { var htext = $(“#txthighlighttext”).val(); $(“#lstCodelist option”).each(function () { var sp = $(this).text(); var sp1 = sp.split(‘ ‘); $.each(sp1, function (i, l) { if (l == htext) { var boldText = “” + htext + “”; $(document).append(boldText); } }); }); }); }); 我更新了代码,但没有运气。 在这段代码中我需要创建al有一个DOM元素来应用黄色。 请任何人可以帮助我如何创建一个dom元素。 谢谢