TOGOUTECH

javascript - 为什么在警报之前不显示元素?

coder 2024-05-16 原文

在这个简单的例子中 https://jsfiddle.net/4rsje4b6/1/为什么 #test 元素在警报出现之前没有显示?

jQuery css() 方法不应该是同步的吗?

#test {
  display: none;
}
<span id="test">Element</span>
$("#test").css("display", "inline");
alert("Showed element!");

更新:

我在 Chrome 版本 52.0.2743.116 m、Windows 10 上表现出这种行为。

最佳答案

它同步改变样式,你会注意到如果你 read back the value on the next line and show it .

$("#test").css("display", "inline");
alert("Showed element!" + $("#test").css("display"));

但是样式对象的更改会触发向页面渲染器发送重绘请求消息,并且会在浏览器空闲时立即处理该消息,这是在该脚本例程结束之后。

不过,这取决于浏览器。在 Edge 中,它工作正常,元素会立即显示,但在 Chrome 和 Vivaldi 中则不然。

查看浏览器如何处理的另一个测试: 如果您调整浏览器窗口的大小,JSFiddle 将缩放(每个区域保持相同的相对大小)。如果您在警报打开的情况下调整 Vivaldi 浏览器的大小,它不会这样做。事实上,如果你把它变小,然后显示警报,然后把它变大,你只会在新空间中得到一个灰色区域,直到你关闭消息框。在 Edge 中, fiddle 只会在后台调整大小,即使整个浏览器窗口都是灰色的,所以这不仅仅是处理时间的问题,更多的是 Chrome 在打开警报时完全卡住页面。

关于javascript - 为什么在警报之前不显示元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38960101/

有关javascript - 为什么在警报之前不显示元素?的更多相关文章

  1. javascript - 引用 javascript 对象文字数组 - 2

    您将如何引用此结构中的模型(Accord、CRV、Prius等)?这是一个糟糕的结构,能够提取品牌...然后使用品牌获取模型...然后使用模型获取选项?varcars=[{"makes":"Honda","models":[{'Accord':["2dr","4dr"]},{'CRV':["2dr","Hatchback"]},{'Pilot':["base","superDuper"]}]},{

  2. javascript - 为什么 IE 在设置 innerHTML 时会出现意外错误 - 2

    我尝试在firefox中的一个元素上设置innerHTML,它工作正常,在IE中尝试它并出现意外错误,没有明显的原因。例如,如果您尝试将表格的innerHTML设置为“hifromstu”,它将失败,因为表格后面必须跟一个序列。 最佳答案 您看到该行为是因为innerHTML对于IE中的表元素是只读的。来自MSDN的innerHTMLProperty文档:Thepropertyisread/writeforallobjectsexceptthefollowing,forwhichitisread-only:COL,COLGROUP,

  3. javascript - 如何减小 Angular 2、4、6、7、8、9、10 中 vendor.js 的大小? - 2

    AngularCLI创建vendor.js我不知道为什么以及它有什么用??对于新应用,此文件的大小约为3.2MB!!此文件是否包含Angular6Javascript源?您不认为这是在低速连接上加载到Internet上的大文件吗? 最佳答案 此文件包含您添加到项目中的所有库。如果您在生产模式下构建应用,文件大小会更小。ngbuild--prod 关于javascript-如何减小Angular2、4、6、7、8、9、10中vendor.js的大小?,我们在StackOverflow上找到

  4. javascript - NestJS 在生产中启用 cors - 2

    我在theofficialtutorial之后在我的NestJS应用中启用了CORS,所以我的main.ts看起来像下面这样:import{FastifyAdapter,NestFactory}from'@nestjs/core';import{AppModule}from'./app.module';asyncfunctionbootstrap(){constapp=awaitNestFactory.create(AppModule,newFastifyAdapter(),{cors:true});awaitapp.listen(3000);}boot

  5. javascript - js中的 session 存储 - 2

    您好,我是JavaScript的初学者,我想问一下是否可以session我从服务器获取的数据。我想要session的数据是我在网上搜索到的“data.xhr.response”,大多数人都使用SessionStorage函数,但我不确定如何处理它,我们将不胜感激。$(function(){Dropzone.autoDiscover=false;$('#file-upload').dropzone({maxFiles:1,acceptedFiles:".pdf,.doc,.docx,.html",dataType:"json",succes

  6. javascript - Chrome : Simulate keypress events on input text field using javascript - 2

    stackoverflow中有很多关于此的内容,但似乎没有一个适合我的情况。我有一个输入文本字段,我想模拟按键事件来填充文本字段。原因:我在不提供API的网络界面上自动执行大量数据输入任务。使用.value更改输入字段不会触发界面的JS端(Angular)。这就是为什么我要模拟按键事件。首先我尝试了这个:varinp=document.getElementById('rule-type');inp.dispatchEvent(newKeyboardEvent('keypress',{'key':'a'}));然后我了解到在

  7. javascript - Internet Explorer 11 上的 SweetAlert2 语法错误 - 2

    我正在使用SweetAlert2examplespage的确切代码:swal({title:'Areyousure?',text:"Youwon'tbeabletorevertthis!",type:'warning',showCancelButton:true,confirmButtonColor:'#3085d6',cancelButtonColor:'#d33',confirmButtonText:'Yes,deleteit!'}).then((result)=>{if(

  8. javascript - 任何人都可以生成 opencv.js 吗? - 2

    我无法使用以下说明生成OpenCV.js:https://docs.opencv.org/master/d4/da1/tutorial_js_setup.html我有这个错误:CMakeError:CMakewasunabletofindabuildprogramcorrespondingto"UnixMakefiles".CMAKE_MAKE_PROGRAMisnotset.Youprobablyneedtoselectadifferentbuildtool.当我尝试执行时:python./platforms/js/build_js.pybuild_js好的,伙计们!

  9. javascript - "$attrs is readonly", "$listeners is readonly", "Avoid mutating a prop directly" - 2

    我是Vue新手。我正在尝试开发一个聊天应用程序,其中好友列表将显示在左侧菜单上,聊天框将显示在正文中。我正在使用ajax调用加载好友列表,并根据好友ID路由到聊天框。这是代码示例。<divclass="chat-containerclearfix"id="chat"><divclass="people-list"id="people-list"><chatlist-component></chatlist-component></div><divclass=

  10. javascript - 在 Angular 中导航时,将 child 路由到 parent 不起作用 - 2

    我使用的是angular5.1.0,路由系统有问题,让我解释一下:在我的应用程序路由模块中,我有一个url/api那个延迟加载另一个模块,在那个延迟加载的模块中我有下一个路由实现:api-routing.module.tsconstroutes:Routes=[{path:'',component:ApisComponent,data:{breadcrumbs:'APIs',},children:[{path:'',component:ApiListComponent,},{path:':id',component:Api

随机推荐

  1. javascript - 引用 javascript 对象文字数组 - 2

    您将如何引用此结构中的模型(Accord、CRV、Prius等)?这是一个糟糕的结构,能够提取品牌...然后使用品牌获取模型...然后使用模型获取选项?varcars=[{"makes":"Honda","models":[{'Accord':["2dr","4dr"]},{'CRV':["2dr","Hatchback"]},{'Pilot':["base","superDuper"]}]},{

  2. javascript - 为什么 IE 在设置 innerHTML 时会出现意外错误 - 2

    我尝试在firefox中的一个元素上设置innerHTML,它工作正常,在IE中尝试它并出现意外错误,没有明显的原因。例如,如果您尝试将表格的innerHTML设置为“hifromstu”,它将失败,因为表格后面必须跟一个序列。 最佳答案 您看到该行为是因为innerHTML对于IE中的表元素是只读的。来自MSDN的innerHTMLProperty文档:Thepropertyisread/writeforallobjectsexceptthefollowing,forwhichitisread-only:COL,COLGROUP,

  3. javascript - 如何减小 Angular 2、4、6、7、8、9、10 中 vendor.js 的大小? - 2

    AngularCLI创建vendor.js我不知道为什么以及它有什么用??对于新应用,此文件的大小约为3.2MB!!此文件是否包含Angular6Javascript源?您不认为这是在低速连接上加载到Internet上的大文件吗? 最佳答案 此文件包含您添加到项目中的所有库。如果您在生产模式下构建应用,文件大小会更小。ngbuild--prod 关于javascript-如何减小Angular2、4、6、7、8、9、10中vendor.js的大小?,我们在StackOverflow上找到

  4. javascript - NestJS 在生产中启用 cors - 2

    我在theofficialtutorial之后在我的NestJS应用中启用了CORS,所以我的main.ts看起来像下面这样:import{FastifyAdapter,NestFactory}from'@nestjs/core';import{AppModule}from'./app.module';asyncfunctionbootstrap(){constapp=awaitNestFactory.create(AppModule,newFastifyAdapter(),{cors:true});awaitapp.listen(3000);}boot

  5. javascript - js中的 session 存储 - 2

    您好,我是JavaScript的初学者,我想问一下是否可以session我从服务器获取的数据。我想要session的数据是我在网上搜索到的“data.xhr.response”,大多数人都使用SessionStorage函数,但我不确定如何处理它,我们将不胜感激。$(function(){Dropzone.autoDiscover=false;$('#file-upload').dropzone({maxFiles:1,acceptedFiles:".pdf,.doc,.docx,.html",dataType:"json",succes

  6. javascript - Chrome : Simulate keypress events on input text field using javascript - 2

    stackoverflow中有很多关于此的内容,但似乎没有一个适合我的情况。我有一个输入文本字段,我想模拟按键事件来填充文本字段。原因:我在不提供API的网络界面上自动执行大量数据输入任务。使用.value更改输入字段不会触发界面的JS端(Angular)。这就是为什么我要模拟按键事件。首先我尝试了这个:varinp=document.getElementById('rule-type');inp.dispatchEvent(newKeyboardEvent('keypress',{'key':'a'}));然后我了解到在

  7. javascript - Internet Explorer 11 上的 SweetAlert2 语法错误 - 2

    我正在使用SweetAlert2examplespage的确切代码:swal({title:'Areyousure?',text:"Youwon'tbeabletorevertthis!",type:'warning',showCancelButton:true,confirmButtonColor:'#3085d6',cancelButtonColor:'#d33',confirmButtonText:'Yes,deleteit!'}).then((result)=>{if(

  8. javascript - 任何人都可以生成 opencv.js 吗? - 2

    我无法使用以下说明生成OpenCV.js:https://docs.opencv.org/master/d4/da1/tutorial_js_setup.html我有这个错误:CMakeError:CMakewasunabletofindabuildprogramcorrespondingto"UnixMakefiles".CMAKE_MAKE_PROGRAMisnotset.Youprobablyneedtoselectadifferentbuildtool.当我尝试执行时:python./platforms/js/build_js.pybuild_js好的,伙计们!

  9. javascript - "$attrs is readonly", "$listeners is readonly", "Avoid mutating a prop directly" - 2

    我是Vue新手。我正在尝试开发一个聊天应用程序,其中好友列表将显示在左侧菜单上,聊天框将显示在正文中。我正在使用ajax调用加载好友列表,并根据好友ID路由到聊天框。这是代码示例。<divclass="chat-containerclearfix"id="chat"><divclass="people-list"id="people-list"><chatlist-component></chatlist-component></div><divclass=

  10. javascript - 在 Angular 中导航时,将 child 路由到 parent 不起作用 - 2

    我使用的是angular5.1.0,路由系统有问题,让我解释一下:在我的应用程序路由模块中,我有一个url/api那个延迟加载另一个模块,在那个延迟加载的模块中我有下一个路由实现:api-routing.module.tsconstroutes:Routes=[{path:'',component:ApisComponent,data:{breadcrumbs:'APIs',},children:[{path:'',component:ApiListComponent,},{path:':id',component:Api