在像这样的CSS中:
...
#big-menu {
background: #fff url(../images/big-menu.jpg) no-repeat;
}
#some-menu {
background: #fff url(../images/some-menu.jpg) no-repeat;
}
#some-other-menu {
background: #fff url(../images/some-other-menu.jpg) no-repeat;
}
...
Run Code Online (Sandbox Code Playgroud)
是有延迟的加载方式#big-menu的背景图像,使之一切,包括所有的HTML的图像之后加载,和所有其他的CSS背景(some-menu和some-other-menu).
原因是,big-menu.jpg的大小非常重,我希望它最后加载.毕竟,它只是一个令人瞩目的焦点,还有其他背景图像比这更好用.(例如按钮中使用的那些)
将它放入CSS中的顺序或#big-menuHTML中出现的标记()是否与首先加载的内容有关?还是有更可靠的方法来控制它?javascript(jQuery首选)很好.
我想了解Libc如何在内存中加载共享库并在进程间共享?是否有一个libc实例加载到内存中并在所有进程之间共享,或者每个进程的内存中是每个libc实例.我不清楚libc如何在进程之间共享.
谢谢Aditya
当我单击ajax.action链接时,我想在页面中间使用backgroung opacity显示加载图像.
<img id="image_loading" alt="" src="../../images/site/loading.gif" style="position: fixed;
display: none;" />
Run Code Online (Sandbox Code Playgroud)
这是我的代码
<nav class="ust_menu">
<ul>
<li>@Ajax.ActionLink("Home", "Index", "Home", new AjaxOptions { UpdateTargetId = "article_site", LoadingElementId = "image_loading" })</li>
<li>@Ajax.ActionLink("Contact Us", "Contact", "Home", new AjaxOptions { UpdateTargetId = "article_site", LoadingElementId = "image_loading" })</li>
<li>@Ajax.ActionLink("About", "About", "Home", new AjaxOptions { UpdateTargetId = "article_site", LoadingElementId = "image_loading" })</li>
</ul>
</nav>
Run Code Online (Sandbox Code Playgroud)
我可以显示没有背景不透明度的图像,而不是我想要的位置.如何在背景不透明度的页面中间显示加载图像.
谢谢.
我发现了许多描述 javascript 图像加载的主题,但并不完全是我要搜索的主题。
我目前正在以正常方式加载 html 中的图像,例如
<img src="images/big-image.jpg">
Run Code Online (Sandbox Code Playgroud)
这会导致网页上的空白空间从上到下填充了加载图像。此外,我总是要注意图像的文件大小。
什么我要实现的是,在页面加载时,每幅图像(约10KB)的缩小的版本显示。当页面完全加载时,应该有一个 javascript 函数在后台加载大图像并在加载时替换它们。
我已经找到了一种使用 javascript 执行此操作的方法,但是在替换所有图像之前,浏览器会显示他处于“加载”状态。是否可以使用异步方法在后台执行加载任务?
<img src="small.jpg" id="image">
<script>
<!--
var img = new Image();
img.onload = function() {
change_image();
}
img.src = "small.jpg";
function change_image() {
document.getElementById("image").src = "big.jpg";
}
//-->
</script>
Run Code Online (Sandbox Code Playgroud) 我可以卸载和删除包而不必重新启动已经需要/加载包的 R 进程吗?
我看过这个问题/答案,但它只处理部分问题(卸载)
我想这样做的原因是我正在开发一个基于项目的包开发框架,其中我还使用基于项目的包库以保持标准库“干净”并允许对包进行系统测试依赖关系。
唯一的问题是,用户在初始化项目之前很难记住基于项目的包库的路径(它还通过加载所有指定的包依赖项require()并使基于项目的库成为第一个.libPaths())
实际上,这意味着用户目前无法以一种舒适的方式(即在初始化项目之后)从基于项目的包库中真正卸载包依赖项,我正在寻找改变这一点的方法。
install.packages("forecast")
require("forecast")
detach("package:forecast", unload=TRUE)
remove.packages("forecast")
> install.packages("forecast")
Warning: unable to access index for repository http://www.stats.ox.ac.uk/pub/RWin/bin/windows/contrib/2.15
trying URL 'http://cran.rstudio.com/bin/windows/contrib/2.15/forecast_4.03.zip'
Content type 'application/zip' length 1124001 bytes (1.1 Mb)
opened URL
downloaded 1.1 Mb
package 'forecast' successfully unpacked and MD5 sums checked
Warning: cannot remove prior installation of package 'forecast'
The downloaded binary packages are …Run Code Online (Sandbox Code Playgroud) 我有一个非常大的高分辨率地图,我想在应用程序中使用它(图像大小约为 80 mb)。
我想知道以下内容:
JProgressBar向用户显示。这应该反映已加载的字节数或类似的内容。是否有任何图像加载方法可以提供此功能(如ImageIO.read())?BufferedImage对于这么大的文件,重新缩放标准方式需要很长时间。有没有什么有效的方法可以做到这一点?谢谢您的意见!
亲切的问候,
埃克托·范登布恩
ps 图像将绘制在 JPanel 的画布上。
嗨,安德鲁,非常感谢您的帮助;一切都很完美,加载速度很快。如果没有您的专业知识和解释,我会一直致力于此,因此您赢得了公平公正的赏金。
我所做的是以下内容;使用 imagemagick 我创建了多个不同分辨率的图像,并且在执行开始时我只加载最小的 res。图片。其余的加载在单独的线程中,因此执行不会停止。使用您提供给我的信息,我然后在放大或缩小时使用适当的图像。我对使用瓷砖有点怀疑,因为我需要在地图上绘制自己的图像,而我在您告诉我使用的外部罐子中找不到油漆功能,所以我最终使用了一些简单的东西;当缩放或平移时,重新缩放模式设置为快速,当您不缩放或平移时,重新缩放设置为平滑以获得像素完美的图像(就像您建议的那样),但事实证明这足够快,我不”
所以再次感谢,一切正常:)
我正在用C#在ASP.NET上构建一个Web应用程序.在按钮上单击我显示加载图像,同时正在执行数据库查询.然后我动态创建一个Excel文件并将其发送到客户端,如下所示:
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.AddHeader("content-disposition", "attachment;filename=" + filename + ".xlsx");
HttpContext.Current.Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.Unicode;
HttpContext.Current.Response.BinaryWrite(p.GetAsByteArray());
HttpContext.Current.Response.Flush();
HttpContext.Current.Response.End();
Run Code Online (Sandbox Code Playgroud)
我得到了对话框,加载图像就在那里.
我试过在上面的代码之前调用一个javascript函数(使用ClientScript.RegisterStartupScript函数),它没有用.据我所知,所有javascript代码都是在所有代码隐藏执行后运行的,但在这种情况下,一旦将文件发送到客户端,它就不会执行.
我也尝试创建一个单独的线程,并删除那里的加载图像.我把断点跟踪它,线程中的代码确实执行,但图像仍然保留在那里.
有谁知道如何处理这个问题?谢谢!
在服务器上处理“长”请求时,我在禁用按钮时遇到问题。
我们的应用程序运行在 Java Spring/Tomcat 后端,前端使用 AngularJS。我们的用户可以点击“导出”按钮来获取一些统计数据的 CSV 文件。问题是这个文件是通过调用这样的 URL 在服务器端生成的:
<a ng-href="/exports?id={{the_id}}>Export</a>
Run Code Online (Sandbox Code Playgroud)
并且响应类型是:application/octet-stream。
请求工作正常,但可能有点慢。我想在文件生成时禁用该按钮,并在“保存文件”窗口出现后启用它。但是我无法通过简单的“同步”href 拦截这些事件。
我尝试异步处理请求,$http.get()但这一次,我不知道如何在处理完成后以相同的方式向用户提供文件(例如,Mega 为已经使用过它的人提供的方式)。
提前致谢 !
PS:我知道,使处理速度更快是另一种解决方案......但现在不可能,而不是重点:)
编辑:问题得到了解决,感谢 Ed 的回答,并进行了一些修改(我不知道这样做是否是“好”的方法,但实际上它完全按照我想要的方式对我有用)。
$scope.processExport = function(campaignId) {
if (!$scope.exportProcessing) {
$scope.exportProcessing = true;
$http.get('my_generating_url').success(function(response) {
$scope.exportProcessing = false;
$window.location.href = 'url_to_retrieve_the_file_with_' + response.fileName;
}).error(function() {
$scope.exportProcessing = false;
});
}
}
Run Code Online (Sandbox Code Playgroud)
以及相应的 HTML:
<button ng-click="processExport(the_id)" ng-disabled="exportProcessing">Export</button>
Run Code Online (Sandbox Code Playgroud)
并且my_generating_url只是在成功生成后返回文件名。
所以我的问题是我尝试在启动时加载多个纹理,然后存储所有 ID,以便我可以绑定它们以使用它们。现在我知道 ID 被正确存储,因为我可以调试它并在分配和使用中看到 ID 是相同的。只是对于每个绑定,它使用我加载的最后一个纹理。这是我的代码:
GLuint TextureLoader::LoadTexture (const char* fileName,Material& material,int width,int height) {
GLuint textureImage;
FILE* textureFile;
textureFile = fopen(fileName, "rb");
unsigned char* imageData;
if (textureFile == NULL) {
return 0;
}
imageData = (unsigned char*)malloc(width * height * 3);
char header[54];
fread(header,1,54,textureFile);
fread(imageData, width * height * 3, 1, textureFile);
fclose(textureFile);
for (int i = 0; i < width * height; ++i) {
int nextIndex = i * 3;
unsigned char a = imageData[nextIndex];
unsigned char b …Run Code Online (Sandbox Code Playgroud) 我有一个站点和该站点中的 iFrame,以及许多其他内容(图像等)。
现在我使用 jQuery$(document).ready(function() { ... });来执行代码。在该代码中,我试图操作 iFrame 中的内容。但是,我必须确保加载 iFrame 才能执行代码。
iFrame 通常在代码执行的同时加载,所以它有时会失败,有时不会。
如果我使用$('#iframe').load(function(){ });,该事件并不总是执行,因为在那一刻我附加了加载侦听器,iFrame 可能已经完成加载,并且加载事件不会再次执行。如果我把它放在一边,元素有时还不存在(代码执行得太早)。
所以我想要实现的是这样的:
if iFrame is already loaded
-- execute code
else
-- $('#iframe').load(function() { /*execute code*/ });
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法可以在不使用脏超时的情况下实现这一目标?或者如果使用这种方法,是否有一个函数可以检查元素是否已经加载?
loading ×10
javascript ×3
html ×2
image ×2
angularjs ×1
asp.net ×1
asp.net-ajax ×1
asp.net-mvc ×1
asynchronous ×1
c# ×1
c++ ×1
css ×1
dll ×1
dom ×1
events ×1
java ×1
jquery ×1
large-files ×1
libc ×1
opengl ×1
process ×1
r ×1
rescale ×1
server-side ×1
texture2d ×1