te')); return $arr; } /* 遍历用户所有主题 * @param $uid 用户ID * @param int $page 页数 * @param int $pagesize 每页记录条数 * @param bool $desc 排序方式 TRUE降序 FALSE升序 * @param string $key 返回的数组用那一列的值作为 key * @param array $col 查询哪些列 */ function thread_tid_find_by_uid($uid, $page = 1, $pagesize = 1000, $desc = TRUE, $key = 'tid', $col = array()) { if (empty($uid)) return array(); $orderby = TRUE == $desc ? -1 : 1; $arr = thread_tid__find($cond = array('uid' => $uid), array('tid' => $orderby), $page, $pagesize, $key, $col); return $arr; } // 遍历栏目下tid 支持数组 $fid = array(1,2,3) function thread_tid_find_by_fid($fid, $page = 1, $pagesize = 1000, $desc = TRUE) { if (empty($fid)) return array(); $orderby = TRUE == $desc ? -1 : 1; $arr = thread_tid__find($cond = array('fid' => $fid), array('tid' => $orderby), $page, $pagesize, 'tid', array('tid', 'verify_date')); return $arr; } function thread_tid_delete($tid) { if (empty($tid)) return FALSE; $r = thread_tid__delete(array('tid' => $tid)); return $r; } function thread_tid_count() { $n = thread_tid__count(); return $n; } // 统计用户主题数 大数量下严谨使用非主键统计 function thread_uid_count($uid) { $n = thread_tid__count(array('uid' => $uid)); return $n; } // 统计栏目主题数 大数量下严谨使用非主键统计 function thread_fid_count($fid) { $n = thread_tid__count(array('fid' => $fid)); return $n; } ?>how to access variable inside jquery from regular javascript function - Stack Overflow
最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

how to access variable inside jquery from regular javascript function - Stack Overflow

programmeradmin3浏览0评论

I am a newbie to the jquery. I am trying to access a variable defined inside jquery block outside the jquery (from regular function) like this, but I can't access it. Could somebody tell me how?

<script language="javascript">
$(function()
{
    .......
    .......
    .......
    var api = pane.data('jsp');
    var current_location = api.getContentPositionX();
}

function change_title(t_index) {
    alert("print="+$.current_location);
    window.location.href="page.php?p="+$.current_location);
}

I want to get a value for $.current_location.

Thanks.

I am a newbie to the jquery. I am trying to access a variable defined inside jquery block outside the jquery (from regular function) like this, but I can't access it. Could somebody tell me how?

<script language="javascript">
$(function()
{
    .......
    .......
    .......
    var api = pane.data('jsp');
    var current_location = api.getContentPositionX();
}

function change_title(t_index) {
    alert("print="+$.current_location);
    window.location.href="page.php?p="+$.current_location);
}

I want to get a value for $.current_location.

Thanks.

Share Improve this question asked Jul 8, 2011 at 6:58 user826323user826323 2,3386 gold badges44 silver badges74 bronze badges
Add a ment  | 

4 Answers 4

Reset to default 8

There is no such thing as a "jQuery variable", they are all regular Javascript varaibles.

The reason that you can't access the current_location variable from your function is that the variable is declared locally inside another function.

Just declare the variable outside the functions so that it's global, and you can access it from both functions:

var current_location;

$(function() {
    .......
    .......
    .......
    var api = pane.data('jsp');
    current_location = api.getContentPositionX();
}

function change_title(t_index) {
    alert("print=" + current_location);
    window.location.href = "page.php?p=" + current_location;
}

you need to store current_location on a globally accessible object. either window, or a custom object that you use as a namespaced object.

<script language="javascript">
var current_location = null;
var obj = {};
$(function() {
    .......
    .......
    .......
    var api = pane.data('jsp');
    current_location = api.getContentPositionX();
    obj.current_location = current_location;
})

function change_title(t_index) {
    obj.current_location;
    alert("print="+$.current_location);
    window.location.href="page.php?p="+current_location);
}

The variable is defined within the first function, so the scope of that variable is only within the first function and hence cannot be seen from outside that function.

Try defining the variable outside the function so it has a bigger scope.

The jQuery object is global, as long as you have included jQuery on the page of course. So calling $.property or jQuery.property ($ is alias) should work as long as the property exists, is set and is public.

You might want to do in order to make the current_location var a member of the jQuery object:

$(function()
{
    .......
    .......
    .......
    var api = pane.data('jsp');
    this.current_location = api.getContentPositionX();
}
发布评论

评论列表(0)

  1. 暂无评论