jQuery-函数在div单击时启动时运行良好,但在页面加载时不启动

jQuery-函数在div单击时启动时运行良好,但在页面加载时不启动,jquery,function,Jquery,Function,我想在页面加载时运行以下函数,并在单击divtrigger时重新运行。当你点击divtrigger时,一切都很好。然而,在页面加载时,代码有时似乎可以工作,但有时缩进的数量是错误的,并且我刚才出于调试目的而放在那里的警报永远不会触发。谢谢 function textIndentFunc () { textString = $('#from-1 :selected').text(); $('#hidden').text(textString); textWi

我想在页面加载时运行以下函数,并在单击divtrigger时重新运行。当你点击divtrigger时,一切都很好。然而,在页面加载时,代码有时似乎可以工作,但有时缩进的数量是错误的,并且我刚才出于调试目的而放在那里的警报永远不会触发。谢谢

  function textIndentFunc () {

     textString = $('#from-1 :selected').text();

     $('#hidden').text(textString);

     textWidth = $('#hidden').width();

     inputWidth = $('#from-1 select').width();

     indentMy = (inputWidth / 2) - (textWidth / 2);

    $('#from-1').css('text-indent',indentMy);

}

 $('#trigger').click(function(){
    textIndentFunc();
    alert('fire');
 });

textIndentFunc();
更新-我应该提到这段代码在document.ready上运行


更新-将代码移动到window.load不会改变任何内容。

将函数调用包装到document.ready处理程序中,如下所示

$(function() {
    textIndentFunc();
});

这确保在尝试操作DOM之前加载DOM,否则您将在不同的时间获得不同的结果,具体取决于加载的内容和未加载的内容。

将函数调用包装在文档中。准备好这样的处理程序

$(function() {
    textIndentFunc();
});

这确保在尝试操作DOM之前加载DOM,否则您将在不同的时间获得不同的结果,具体取决于加载的内容和未加载的内容。

您的函数需要在document.ready call中调用

$(document).ready(function() {
   textIndentFunc();
});

您的函数需要在document.ready调用中调用

$(document).ready(function() {
   textIndentFunc();
});

您是否有另一个同样在页面加载时运行的函数?因为如果是这种情况,可能这两个函数有冲突…

您是否有另一个函数也在页面加载时运行?因为如果是这种情况,这两个函数可能有冲突…

如果您已经在$document.ready中调用textIndendFunc,但仍然没有得到预期的结果,请尝试将textIndendFunc移动到$window.load。

如果您已经在$document.ready中调用textIndendFunc,但仍然没有得到预期的结果,尝试将textIndentFunc移动到$window.load。

尝试如下操作

$document.readyfunction{ $“触发器”。单击函数{ textfunc; 警惕“火灾”; }; }; 函数textIndentFunc{ textString=$'from-1:selected'。文本; $'hidden'.textstring; textWidth=$‘隐藏’。宽度; inputWidth=$“从-1选择”。宽度; indentMy=输入宽度/2-文本宽度/2; $'from-1'.css'text-indent',indentMy; } textfunc; Hai试试下面的方法

$document.readyfunction{ $“触发器”。单击函数{ textfunc; 警惕“火灾”; }; }; 函数textIndentFunc{ textString=$'from-1:selected'。文本; $'hidden'.textstring; textWidth=$‘隐藏’。宽度; inputWidth=$“从-1选择”。宽度; indentMy=输入宽度/2-文本宽度/2; $'from-1'.css'text-indent',indentMy; } textfunc;
HaiOnly other函数隐藏浏览器chrome:function hideChrome{setTimeoutfunction{window.scrollTo0,1},100;}我不确定将代码移动到window.load是否有帮助,但由于某种原因,当我还更改了其他函数的顺序时,它修复了此问题。感谢我的帮助…感谢你只有其他函数隐藏浏览器chrome:function hideChrome{setTimeoutfunction{window.scrollTo0,1},100;}我不确定是否将代码移动到window.load有帮助,但由于某种原因,当我还更改了其他函数的顺序时,它修复了此问题。感谢我的帮助…谢谢它已经在一个函数中,但我现在将它移动到window.load,但问题仍然存在。谢谢看到剩下的代码会有帮助,因为你向我们展示的应该可以很好地工作。它已经在一个函数中,但我现在将它移动到window.load,但问题仍然存在。谢谢看到剩下的代码会很有帮助,因为您向我们展示的应该可以很好地工作。您能在JSFIDLE上发布您所拥有的吗?您能在JSFIDLE上发布您所拥有的吗?