0

下面是如何在控件中使用特定版本的 jQuery(之前已在页面上分配)并将其设置回之前的版本以获取剩余控件。

我知道这并不理想,但稍后会清理 who 应用程序。

提前致谢。

<!-- This would be set earlier on the page. Possibly at page level or in a previous control -->
<script type="text\javascript" src='jquery-1.7.1.js'></script>

<!-- This would at the start of the control -->
<script>
var $origJquery = null; //Should be unique var name for the control

if(typeof jQuery != 'undefined')
    $origJquery = jQuery.noConflict();
</script>

<script type="text\javascript" src='jquery-1.7.2.js'></script>

<script>
var $newJquery = jQuery.noConflict();

//Can use $newJquery here

</script>

<script>
//Set back when finished at end of control
if($origJquery != null)
{
    $ = $origJquery;
    $origJquery = null;
}
</script>
4

1 回答 1

0

我会在加载默认版本之前加载特定(新)版本。

<script type="text\javascript" src='jquery-1.7.2.js'></script>

<script>

    // Assign it to the new name space
    var $ns = jQuery.noConflict();

</script>

现在 jQuery 版本被分配给新的命名空间。然后

<script type="text\javascript" src='jquery-1.7.1.js'></script>

在默认的 jQuery 命名空间 ($) 上无法访问默认版本。

新组件可以使用 $ns('.selector') 访问其版本。

在您的版本中,新命名空间仅在加载期间有效,如果您的新组件在加载后(准备就绪)执行操作,您就会遇到问题。

于 2012-06-29T15:42:33.497 回答