TECHTOGOU

javascript - 当包含在基于 jQuery 的选项卡中时,Google Chart 加载量非常小

coder 2024-05-16 原文

我正在使用 Google 的 line chart几乎与演示完全一样 - 只有数据发生了变化 - 在 this jQuery tab plugin 内部没有修改。也许有 50% 的时间,图表将以 400x200 加载,即使它已被指定为以 700x250 加载。包含的 div 将具有适当的宽度和高度,但 API 呈现的图表将以 400x200 加载到其中。

我怀疑这是因为当 API 尝试呈现时未显示选项卡。正因为如此,它会尝试以它认为是 null 的内容进行渲染,从而迫使自己采用最小的默认分辨率。

我的想法是,如果图表的显示可以延迟到单击适当的选项卡时,就可以解决问题。可悲的是,我不知道该怎么做,我的研究也没有成果。我能找到的最接近的是 this thread ,但我没有在那里找到任何真正的答案。

如果您有任何建议,我将不胜感激,如有必要,我很乐意跟进更多信息。

最佳答案

在隐藏的 div 中呈现图表(这是选项卡 UI 中未选择的选项卡最有可能的)会扰乱 Visualization API 检测维度的能力,因此您需要执行以下两种操作之一:要么呈现所有图表在实例化选项卡之前,或者(正如您所了解的那样)绑定(bind)事件监听器以在首次打开选项卡时绘制图表。在图表的选项中设置高度和宽度不足以解决所有浏览器中的问题。

我浏览了 easytabs 文档,看起来你应该能够做这样的事情:

// draw chart(s) in your default open tab

// track which tabs you've drawn charts in
var chartsDrawn = {
    tab1: true,
    tab2: false,
    tab3: false
    // etc
};

$('#tab-container').bind('easytabs:after', function (e) {
    if (e.tab == 'tab-2' && !chartsDrawn.tab2) {
        // draw chart(s) in tab 2
        chartsDrawn.tab2 = true;
    }
    else if (e.tab == 'tab-3' && !chartsDrawn.tab3) {
        // draw chart(s) in tab 3
        chartsDrawn.tab3 = true;
    }
    // etc
});

关于javascript - 当包含在基于 jQuery 的选项卡中时,Google Chart 加载量非常小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18564410/

有关javascript - 当包含在基于 jQuery 的选项卡中时,Google Chart 加载量非常小的更多相关文章

  1. c# - Entity Framework 5 过滤并包含导航属性 - 2

    我想找到一种使用Linq将导航属性过滤到相关实体子集的方法。我知道围绕这个主题的所有答案都建议使用匿名选择器,例如:query.Where(x=>x.Users.Any(y=>y.ID==actingUser.ID)).Select(x=>new{Event=x,Discussions=x.Discussions.Where(actingUser.GenerateSecurityFilterFor<Domain.Discussion>())}).OrderBy(x=>x.Discussions.Count()).ThenBy(x=>x.Even

  2. c# - 在包含类中,使用属性还是字段? - 2

    在包含私有(private)字段或属性的类中编写代码时,使用私有(private)字段或属性是好习惯吗?例如,如果我有这个字段/属性对,外部类必须使用该属性。类内部的代码怎么样?它应该使用私有(private)字段,还是也应该通过属性?privatestring_foo;protectedstringFoo{get{returnthis._foo;}}privatevoidSomeMethod(){stringdummyVariable="snuh"+this._foo;//So,this...stringdummyVariable="snuh"+thi

  3. c# - IDisposable 实现 - 'if (disposing)' 中应该包含什么 - 2

    我一直在修复winforms应用程序中的一些内存泄漏问题,并注意到一些未明确处理的一次性对象(开发人员尚未调用Dispose方法)。Finalize方法的实现也无济于事,因为它没有进入if(disposing)子句。所有的静态事件注销和集合清除都放在了if(disposing)子句中。如果对象是一次性的,最好的做法是调用Dispose,但不幸的是,这种情况有时会发生如果有非托管对象、静态事件处理程序和一些托管集合需要在处置时清除。if(disposing)子句如何决定什么进什么出。Disposemethod.//Dispose(booldisposing)executesintwodi

  4. c# - C# 编译器的图像调试选项如何影响 .NET JIT 编译性能(包括动态方法)? - 2

    我正在尝试优化我的应用程序,使其在启动后立即运行良好。目前,它的发行版包含304个二进制文件(包括外部依赖项),总计57兆字节。它是一个WPF应用程序,主要执行数据库访问,没有任何重要的计算。我发现调试配置为大多数操作提供了更好的(~5倍增益)时间,因为它们是在应用程序进程的生命周期中首次执行的。例如,在NGENedDebug中打开应用内的特定屏幕需要0.3秒,JITtedDebug需要0.5秒,NGENedRelease需要1.5秒,JITtedRelease需要2.5秒。据我所知,JIT编译时间的差距是由JIT编译器对发布二进制文件应用更积极的优化造成的。据我所知,调试和发布配置的

  5. c# - 从非常大的文本文件中删除重复的字符串 - 2

    我必须从非常大的文本文件(100Gb+)中删除重复的字符串由于数据的大小,在内存中删除重复项是没有希望的,我已经尝试过bloomfilter但没有用超过5000万个字符串..字符串总数超过1万亿我想知道有什么方法可以解决这个问题..我最初的尝试是,将文件分成多个子文件,对每个文件进行排序,然后将所有文件合并在一起...如果您有比这更好的解决方案,请告诉我,谢谢.. 最佳答案 您在这里寻找的关键概念是externalsorting.您应该能够使用该文章中描述的技术对整个文件进行合并排序,然后按顺序运行它以删除重复项。如果文章不够清楚,

  6. c# - 确定程序集的加载上下文 - 2

    给定一个已加载的程序集,是否有一种方法(在代码中)确定它被加载到3个加载上下文中的哪一个(默认Load、LoadFrom、或都不是)?在SuzanneCook's"ChoosingaBindingContext"文章中,将程序集加载到LoadFrom时会出现一些缺点。特别是,我的库使用反序列化并在加载到LoadFrom上下文时遇到InvalidCastException。目前我的库很晚才失败(它在执行有问题的反序列化代码时失败——参见myexample)。在这些情况下,我想通过检测它加载到的上下文并在未加载到默认Load上下文时抛出异常来使其更早失败。

  7. c# - .NET 中命名空间可以包含的类的数量是否有任何限制? - 2

    在.NET中命名空间可以包含的类的数量是否有任何限制?此外,命名空间中推荐的类数量是多少? 最佳答案 “每个命名空间”没有指定最大类数——命名空间实际上只是类型全名的一部分,而不是CLR中的逻辑实体推荐的数量是合理的:使用命名空间将逻辑上相关的类组合在一起。我敢肯定,如果你有足够多的类型,你可以在内存不足的情况下运行编译器或运行时,但这是一个物理限制,而不是规范——它们是否在同一个命名空间中可能并不重要.请注意,正如Steven指出的那样,您也可以在多个程序集中使用相同的命名空间。 关于

  8. c# - 字符串包含另外两个字符串 - 2

    如果字符串包含2个或更多单词,是否可以让contain函数查找?这就是我想要做的:stringd="Youhitsomeonefor50damage";stringa="damage";stringb="someone";stringc="you";if(d.Contains(b+a)){Console.WriteLine(""+d);Console.ReadLine();}当我运行它时,控制台窗口很快关闭而没有显示任何内容。还有另一个问题:如果我想加上造成的损害程度,获取该数字并将其输入TryParse的

  9. c# - 如何使用 OpenXML 从 Excel 工作表中检索选项卡名称 - 2

    我有一个包含182列的电子表格文档。我需要将电子表格数据逐个标签地放入数据表中,但我需要在从每个标签添加数据时找出标签名称,并将标签名称添加到数据表中的列.这就是我设置数据表的方式。然后我在工作簿中循环并深入到sheetData对象并遍历每一行和每一列,获取单元格数据。DataTabledt=newDataTable();for(inti=0;i<=col.GetUpperBound(0);i++){try{dt.Columns.Add(newDataColumn(col[i].ToString(),typeof(string)));}catch(Exceptione){Mess

  10. c# - jquery datepicker ms ajax updatepanel 在回发后不起作用 - 2

    所以我看了一些相关的问题,有一些有趣的东西但没有找到我的答案,至少没有理解答案。一般来说,我对AJAX、javascript和客户端脚本编写还很陌生。我使用C#asp.net有一段时间了,最​​近在我这边添加了一些更新面板来平滑更新用户控件和位,这样页面就不会每次都重新加载。所有工作都非常出色,我对此非常满意,直到我决定尝试使用一些JQuery。我从ui.jquery.js中选择了日期选择器,它很酷并且在普通页面上运行良好。当我从更新面板中进行回发时,我的问题就来了。日期选择器停止工作。根据我所阅读的内容,我需要在回发后手动将其连接起来。1)我真的不明白为什么。在我的主页上我有:<

随机推荐

  1. c# - Doxygen:隐藏私有(private)/ protected 方法......和技巧 - 2

    关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭4年前。Improvethisquestion我正在使用Doxygen为我们的API生成用C#编写的文档。但是,它公开了私有(private)/protected成员。有没有办法隐藏这些?我想出了如何隐藏文件:EXCLUDE=文件名列表然而,我需要更多的粒度,从而使用户免受不必要的API干扰。示例Doxygen文件以及提示/技巧将不胜感激。您使用什么工具从源代码生成API?当我通过C++在C#中使用Doxygen

  2. C# 多索引器 - 2

    是否有可能有类似下面的东西:classC{publicFooFoos[inti]{...}publicBarBars[inti]{...}}如果没有,那么我可以通过哪些方式实现这一目标?我知道我可以创建名为getFoo(inti)和getBar(inti)的函数,但我希望通过属性来实现。 最佳答案 不在C#中,不。但是,您始终可以从属性返回集合,如下所示:publicIList<Foo>Foos{get{return...;}}publicIList<Bar>Bars{get{return...;}}ILis

  3. c# - 如何让 EF Core 数据库首先使用枚举? - 2

    我将EFCore与数据库优先方法结合使用,使用“Scaffold-DbContext”命令生成我的DbContext/实体。我如何指示Scaffold-DbContext某个表中的某个字段应该生成代码以使用Enum而不仅仅是int?这就是您过去在常规EF中的做法:https://www.devu.com/cs-asp/lesson-69-mapping-enum-types-entity-properties-framework-designer/例子此枚举已在代码中定义:publicenumStateEnum{Ok=1,Fail=2}这就是Scaffold-DbContext给我的东

  4. C# 以编程方式更改应用程序语言 UWP 实时 - 2

    在我的应用程序中,每种语言的字符串资源都是单独存储的,并根据语言环境的类型显示。我想更改应用程序设置中的语言。我如何实现在语言选择后立即将其应用到用户界面中? 最佳答案 我们可以使用ApplicationLanguages.PrimaryLanguageOverride在运行时更改语言而无需重新启动应用程序。例如:我有两种语言支持“en”和“fr”,本地化消息将显示在文本block中。使用Windows.Globalization添加;将默认语言从“en”更改为“fr”ApplicationLanguages.PrimaryLang

  5. c# - 如何验证(特定国家/地区)电话号码 - 2

    一个有效的电话号码包含:少于9个字符以“+”开头只有数字。我正在尝试使用正则表达式,但我才刚刚开始使用它们,而且我并不擅长。到目前为止我的代码是:staticvoidMain(string[]args){Console.WriteLine("Enteraphonenumber.");stringtelNo=Console.ReadLine();if(Regex.Match(telNo,@"^(\+[0-9])$").Success)Console.WriteLine("correctlyentered");elseConsole.Writ

  6. c# - NullToVisibilityConverter 如果不为空则使可见 - 2

    想要在ListView中隐藏和显示SelectedItem的属性网格<UserControlxmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit"<ListView><!--hereislistview--></ListView><xctk:PropertyGridSelectedObject="{BindingActive}"Visibility="{BindingActive,Converter=NullToVisibilityConvert

  7. c# - CompositeCollection + CollectionContainer : Bind CollectionContainer. 集合到用作 DataTemplates DataType 的 ViewModel 的属性 - 2

    我没有获得正确的绑定(bind)语法来访问DateTemplate中MyViewModel的Cats和Dogs属性>在其资源中定义了一个CompositeCollection。publicclassMyViewModel{publicObservableCollection<Cat>Cats{get;privateset;}publicObservableCollection<Dog>Dogs{get;privateset;}}<DataTemplateDataType={x:Typelocal:MyViewModel}"><DataT

  8. c# - 序列化同一个类中的多个 DateTime 属性,每个属性使用不同的格式 - 2

    我有一个具有两个DateTime属性的类。我需要用不同的格式序列化每个属性。我该怎么做?我试过:JsonConvert.SerializeObject(obj,Formatting.None,newIsoDateTimeConverter{DateTimeFormat="MM.dd.yyyy"});此解决方案对我不起作用,因为它将日期格式应用于所有属性。有没有办法用不同的格式序列化每个DateTime属性?也许有一些属性? 最佳答案 处理这种情况的一种直接方法是将IsoDateTimeConverter子类化,为您需

  9. c# - 是否可以在 C# 中创建没有类的对象? - 2

    在许多语言中,您可以在不创建数据类型的情况下创建对象,并向该对象添加属性。例如在JS或AS中:varmyObject={};myObject.myParameter="helloworld";或者您可以使用C和C++创建结构。可以用C#实现吗? 最佳答案 AnonymousTypes是你要找的。例如-varv=new{Amount=108,Message="Hello"};以上代码将创建一个新的对象,其属性为Amount和Message。 关于c#-是否可

  10. c# - 实现嵌套的通用接口(interface) - 2

    我有以下类/接口(interface)://ModelpublicclassA:IA{}//ModelLogicpublicclassB:IB<A>{}//ModelInterfacepublicinterfaceIA{}//ModelLogicInterfacepublicinterfaceIB<T>whereT:IA{}我尝试使用以下代码创建一个新实例:IB<IA>foo=newB();我收到以下错误:Cannotimplicitlyconverttype'B'to'IB<IA>'.Anexplicit